在PHP 中擷取受保護的屬性
在使用物件時,您可能會遇到需要存取或修改受保護屬性的情況。雖然此存取通常僅限於子類或定義類,但可以使用某些技術來檢索這些屬性。
在 PHP 5.2 中存取受保護的屬性
在 PHP 5.2 中,您可以結合使用類別反射和屬性操作來檢索受保護的屬性。方法如下:
1.建立反射函數:
function accessProtected($obj, $prop) { $reflection = new ReflectionClass($obj); $property = $reflection->getProperty($prop); $property->setAccessible(true); }
2.呼叫反射函數:
$obj = new Fields_Form_Element_Location(); $value = accessProtected($obj, '_value');透過呼叫setAccessible(true),您可以覆寫預設的可存取性限制並擷取受保護的屬性。
附加說明:
以上是如何存取 PHP 中受保護的屬性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!