PHP5 - кое-что не работает...(приватность свойств и клонирование объекта)

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

specialist

Guest
PHP5 - кое-что не работает...(приватность свойств и клонирование объекта)

win2003 + apache 2.0.54 + php 5.0.3 (почти всё по дефолту)
Не работает
1. private/protected у свойств
PHP:
class MyClass {
   protected $Hello = "Hello, World!\n";
   
   function printHello() {
      echo  "<br>MyClass::printHello() " . $this->Hello;
   
   }
}

$obj = new MyClass();
print $obj->Hello;  
$obj->printHello(); //не выводит ничего
2. Клонирование объектов __clone()

С чем может быть связано?
 

Светлана PHP

Guest
php 5.0.4
Выдаёт ошибку на прямое обращение:
print $obj->Hello; // и правильно
А всё остальное - пашет.
 

itprog

Cruftsman
С чем может быть связано?
error_reporting = 0?

-~{}~ 01.05.05 15:40:

И возможно из-за zend.ze1_compatibility_mode = on (это влияет на клонирование, приведение типов и сравнение объектов. )
 

specialist

Guest
Автор оригинала: Светлана PHP
php 5.0.4
Выдаёт ошибку на прямое обращение:
print $obj->Hello; // и правильно
А всё остальное - пашет.
на счёт ошибки ...оно и понятно...меня больше интересует, почему не работает $obj->printHello()...по идеи protected разрешает вывод для метода класса...
перед скрптом ставил error_reporting (E_ALL) никаких ошибок не вывело :(
 

specialist

Guest
itprog
5 баллов ...большое спасибо! :)
Я просто думал..что интерпретатор пропустит строку с ошибкой и всё...а он останавливался...
 
Сверху