invade
2.1.0
該軟件包提供了一個invade
功能,該功能將允許您讀取/編寫對象的私人屬性。它還允許您調用私人方法。
我們投入大量資源來創建課堂開源軟件包。您可以通過購買我們的付費產品之一來支持我們。
非常感謝您向我們發送您的家鄉明信片,並提到您正在使用的包裹。您將在我們的聯繫頁面上找到我們的地址。我們在虛擬明信片牆上發布了所有收到的明信片。
您可以通過作曲家安裝軟件包:
作曲家需要Spatie/Invade
想像一下,您有一個具有私有財產和方法的類定義。
類myClass {private string $ privateProperty ='private value'; private function privatemethod():string {return'private return return value'; } } $ myClass = new myClass();
這就是您可以使用invade
功能獲得私有屬性的價值。
入侵($ myclass) - > privateProperty; //返回“私人價值”
invade
功能還允許您更改私有價值。
入侵($ myclass) - > privateProperty ='更改值'; invade($ myClass) - > privateProperty; //返回更改的值
使用invade
您還可以調用私人功能。
入侵($ myclass) - > privateMethod(); //返回“私人退貨價值”
此外,您還可以獲取並設置私有靜態類屬性並調用私有靜態方法。想像一下這堂課:
類myClass {private static String $ privateStaticProperty ='privateValue'; private static函數privateStaticMethod(字符串$ string,int $ int):string {return'private return return value'。 $字符串。 ''。 $ int; } }
這是您獲得併設置私人類屬性的方式:
入侵(myclass :: class) - > get('PrivateStaticProperty'); //返回的私人value'invade(myClass :: class) - > set('privateStaticProperty','changeValue'); invade(myClass :: class) - > get('PrivationStaticProperty'); //返回“更改值”
這就是您調用私有靜態方法的方式:
入侵(myclass ::班級) - >方法('PrivateStaticMethod') - >呼叫('foo',123); //返回'私人返回值foo 123'
作曲家測試
有關最近發生了變化的更多信息,請參見ChangElog。
請有關詳細信息,請參閱貢獻。
請查看我們有關如何報告安全漏洞的安全政策。
Freek van der herten
所有貢獻者
特別感謝Caneco的徽標
invade
功能的最初想法來自Caleb“ String King” Porzio。我們在Livewire上的這項提交中創建的代碼稍微拋光了。
麻省理工學院許可證(麻省理工學院)。請參閱許可證文件以獲取更多信息。