Почему $new = new self($data); позволяет вам получить доступ к частным функциям и переменным?Php

Кемеровские программисты php общаются здесь
Anonymous
Почему $new = new self($data); позволяет вам получить доступ к частным функциям и переменным?

Сообщение Anonymous »

У меня странное поведение в PHP 5.3. У меня есть класс, который делает это в функции:

Код: Выделить всё

$new = new self($data);
$new->setServiceManager($this->service);
$new->cacheInstance();
НО функция cacheInstance является частной функцией...

Код: Выделить всё

private function cacheInstance()
{
foreach ($this->data as $name => $class) {...}
}
Может ли кто-нибудь объяснить, какого черта это можно использовать таким образом? Разве этот метод не должен быть частным, то есть недоступным извне?
Я могу даже получить доступ к частным переменным экземпляра... типа того... это должно быть какое-то запланированное поведение, может кто-нибудь указать мне направление?

Подробнее здесь: https://stackoverflow.com/questions/328 ... -variables

Вернуться в «Php»