Доступ к объекту из класса

  • Автор темы Автор темы Tuman
  • Дата начала Дата начала

Tuman

Новичок
Доступ к объекту из класса

Почему, код:
PHP:
class cl_test
{
    function test()
    {
        global $tmpl;
        echo $tmpl->members->registrate_block();
    }
}
Работает, а код:

PHP:
class cl_test
{
    public $tmpl;

    function test()
    {
        echo $this->tmpl->members->registrate_block();
    }
}
Выдает ошибку: Call to a member function registrate_block() on a non-object in
 
Tuman
А с чего бы этот код должен работать?
Вы сами то понимаете что такое "public" ?
 
эээ... Видимо нет. Ну да, public не в тему...
Видел примеры где используется var вместо public - но у меня с var тоже не работает...
 
Автор оригинала: Zetruger
читай синтаксис классов php4 и php5

я чете не вижу где $tmpl инициализируется
Не стал приводить инициализацию, да бы не нагромождать (кому интересно это читать?). Если работатет через global, значит там ошибки нет.
Синтаксиса много, может подробнее направите?
Буду ждать *****'а! Он уж направит, так направит :)
 
Зачем тебе обьект $tmpl делать глобальным? Обьясни задачу.
И пока будешь ждать моего ответа на твой еще не написаный ответ читай что-то умное. Например Гради Буча.
 
Tuman, зачем функциям и методам параметры?

И далее... Твои классы теряют смысл если программировать с global.
 
Tuman
а чё тут непонятно, ты создаешь пустую переменную $tmpl и пытаешься получить доступ к свойству members пустой только что созданной и даже не инициализированной переменной... и ещё удивляешься почему не работает
 
Сверху