Gibt es eine Möglichkeit, die Sichtbarkeit in PHP auf die gleiche Weise einzuschränken, wie die Sichtbarkeit von "Paket" in Java oder zumindest die Sichtbarkeit von "Freunden" in C ++? Was ist die beste Vorgehensweise, um ein großes OOP-Projekt beizubehalten und niemanden Code-Teile verwenden zu lassen?
Ich benutze private und geschützte Sichtbarkeit so viel wie ich kann, aber manchmal ist es nicht genug. Ich weiß über diese Anfrage: Ссылка . Gibt es Fortschritte bei der Implementierung von PHP? Gibt es eine Problemumgehung, um Ihren Code (Methoden, Klassenvariablen) vor dem Zugriff von überall zu schützen?
Wie bereits erwähnt hier :
Nein. Sie können eine Variable nach dem Deklarieren eines Namespace, aber Variablen festlegen wird immer im globalen Umfang existieren. Sie sind niemals daran gebunden Namespaces. Sie können dies aus der Abwesenheit eines beliebigen Namens ableiten Auflösungsbeschreibungen in Ссылка
Bis heute gibt es kein Sprachkonstrukt, um die Sichtbarkeit einzuschränken. Aber Sie können Ihre Klasse mit phpDocumentors @internal
annotieren:
Das
@internal
-Tag kann als Gegenstück zum@api
-Tag verwendet werden, was darauf hinweist, dass die zugehörigen Strukturelemente nur für die internen Funktionen dieser Software verwendet werden.
Der API-Benutzer muss diesem Vorschlag folgen.
Tags und Links package php visibility friend