php修改private值的方法:先開啟對應的PHP程式碼檔案;然後透過PHP中的「__get()」和「__set()」函數來為私有成員變數賦值並取得值即可。
本文操作環境:Windows7系統、PHP7.1版,DELL G3電腦
PHP如何修改並取得private變數的值
有時候為了安全,我們需要把把類別的屬性定義為private。但是,但是我們有時需要去操作這些私有成員變量,如果直接訪問是會報錯的,因此在PHP5中,預定義了兩個函數“__get()”和“__set()”來為私有成員變量賦值和取得值,以及檢查屬性的「__isset()」和刪除屬性的方法「__unset()」。
在PHP5 中給我們提供了專門為私有成員變數設定值和取得值的方法,「 __set() 」和「 __get() 」這兩個方法,這兩個方法不是預設存在的, 而是我們手工添加到類別裡面去的,像構造方法(__construct()) 一樣, 類裡面添加了才會存在,可以按下面的方式來添加這兩個方法,當然也可以按個人的風格來新增:
//__get() 方法用来获取私有属性 private function __get( $ property_name ) { if ( isset ( $ this -> $ property_name )) { return ( $ this -> $ property_name ); } else { return ( NULL ); } } //__set() 方法用来设置私有属性 private function __set( $ property_name , $ value ) { $ this -> $ property_name = $ value ; }
有了這2個方法以後,就可以直接執行:
echo $instance->$property 或 $instance->$property = “a”;
來取得和修改private變數的值了,如果沒有手動加入__get();和_ _set();方法則會報錯,
因為我們要存取的是私有變數。
【推薦學習:PHP影片教學】
#以上是php怎麼修改private的詳細內容。更多資訊請關注PHP中文網其他相關文章!