2013-05-19 3 views
-1

я есть эта функцияКак эхо пользовательской функции

function getServerTitle() { 
     return($this->_values[$this->_indexes["SERVERTITLE"][0]]["value"]); 
    } 

И я хотел бы повторить его, но он не работает.

echo getServerTitle(); 

Это показывает

Fatal error: Call to undefined function getServerTitle() 
+3

Кажется, что это метод какого-то класса. Назовите его экземпляром любого класса. –

+0

не копировать и вставлять код, особенно если вы не знаете, как это работает. – hek2mgl

ответ

3

Поскольку тело функции содержит ссылки на $this, это не функция в старом смысле этого слова, но не-статический метод на классе.

Это означает, что единственный способ запустить его значимым образом - создать экземпляр класса и вызвать метод результирующего объекта.

например.

$object=new YOUR_CLASS_NAME(); 
echo $object->getServerTitle(); 
0

Сообщение Eugen является точным; однако конкретное сообщение об ошибке, которое вы получаете, обычно возникает, когда PHP не может найти функцию, которую вы пытаетесь вызвать.

Являются ли ваши утверждения эха и определение функции в отдельных файлах? Если да, включаете ли вы файл, определяющий функцию?

+1

Я предполагаю, что он не может найти функцию, потому что нет глобальной функции, называемой 'getServerTitle', только метод определенного класса. – IMSoP

+0

Хорошо, неважно. Я буду использовать другой скрипт для получения статистики Shoutcast :) Спасибо всем за помощь! – GamaPL

+1

@ user2021811 Не сдавайтесь так легко! Нет ничего плохого в функции, вам просто нужно научиться правильно ее называть. – IMSoP