wenn Ihr Attribute ist private, nicht in der Lage zu sein es, wenn ganz normale (entweder zum Lesen oder Schreiben) von einer Unterklasse zu sehen: Attribut private
bedeutet, dass Sie ist privat zu der Klasse, in der es definiert ist.
, dass der Unterschied zwischen privat ist und geschützt:
- privat zugänglich = nur für die eine Klasse in
- geschützt = von jeder Klasse, die Klasse „a“ you'r des Typs deklariert ist deklarieren (Super- oder Unterklasse)
- Öffentlichkeit von jedermann zugänglich =
Für weitere Informationen über diese in PHP finden Visibilty im Handbuch.
Sie werden wahrscheinlich mehr Informationen im Internet darüber finden, falls erforderlich: es ist eine der Grundlagen der objektorientierten Programmierung und gilt in anderen Sprachen (wie C++, zum Beispiel)
Suche nach Stichworten wie zB "Visibility", "Encapsulation" oder "Information Hiding" - in Verbindung mit OOP/Objektorientierte Programmierung
Können Sie die __set() Methode anzeigen? – danieltalsky
Können Sie etwas mehr Code zeigen? Wie ein kleiner Testfall reproduziert das Problem? Stellen Sie außerdem sicher, dass Ihr error_reporting-Level so ist, dass E_NOTICE-Fehler angezeigt werden (dies könnte Ihnen wirklich dabei helfen); und schließlich, bist du sicher, dass die Eigenschaft "person" in deiner Klasse existiert? –