php內置變量的操作教程

時間:2024-09-07 04:57:16 PHP 我要投稿
  • 相關推薦

php內置變量的操作教程

  php內置變量了:DIRECTORY_SEPARATOR

  DIRECTORY_SEPARATOR是一個返回跟操作系統相關的路徑分隔符的php內置命令,在windows上返回/,而在linux或者類unix上反悔/,就是這么個區別,通常在定義包含文件路徑或者上傳保存目錄的時候會用到。

  PHP 把所有以 __ (兩個下劃線)開頭的類方法當成魔術方法。所以你定義自己的類方法時,不要以 __ 為前綴。

  1 、 __construct()

  當實例化一個對象的時候,這個對象的構造方法將首先被調用;

  我們知道 php5 對象模型和類名相同的函數是類的構造函數,那么如果同時定義構造函數和 __construc() 方法的話, php5 會默認調用 __contruct() 而不會調用同類名函數,所以 __contruct() 作為類的默認構造函數;

  2 、 __destruct()

  析構函數會在到某個對象的所有引用都被刪除或者當對象被顯式銷毀時執行。

  3 、 __get(string $name)

  當試圖讀取一個并不存在的屬性時被調用;如果試圖讀取一個對象并不存在的屬性的時候, php 就會給出錯誤的信息。如果在類里添加 __get 方法,并且我們可以用這個函數實現類似 java 中的反射的各種操作。

  4 、 __set(string $name, mixed $value)

  給未定義的變量賦值時將被調用

  5 、 __call(string $name, array $arguments)

  當調用一個不可訪問方法(如未定義,或者不可見)時, __call() 會被調用。

  __callStatic( string $name, array $arguments )

  當在靜態方法中調用一個不可訪問方法(如未定義,或者不可見)時, __callStatic() 會被調用。

  6 、 __toString()

  當打印一個對象的時候被調用,這個方法類似于 java 的 toString 方法,當我們直接打印對象的時候回調這個函數。

  7 、 __clone()

  當對象被克隆時調用。

  8 、 __sleep()

  serialize() 函數會檢查是否存在一個魔術方法 __sleep . 如果存在, __sleep() 方法會先被調用, 然后才執行序列化操作。這個功能可以用于清理對象,并返回一個包含對象中所有變量名稱的數組。如果該方法不返回任何內容,則 NULL 被序列化,導致 一個 E_NOTICE 錯誤。 __sleep 方法常用于提交未提交的數據,或類似的操作。同時,如果你有一些很大的對象,不需要保存,這個功能就很好用。

  9 、 __wakeup()

  與 __sleep() 相反, unserialize() 會檢查是否存在一個 __wakeup 方法。如果存在,則會先調用 __wakeup 方法,預先準備對象數據。 __wakeup 經常用在反序列化操作中,例如重新建立數據庫連接,或執行其它初始化操作。

  10 、 __isset()

  當對未定義的變量調用 isset() 或 empty() 時, __isset() 會被調用。

  11 、 __unset()

  unset 一個對象的屬性時被調用。如: unset($c->name) 。

  12 、 __set_state()

  調用 var_export 時,被調用。用 __set_state 的返回值做為 var_export 的返回值。

  13 、 __autoload()

  實例化一個對象時,如果對應的類不存在,則該方法被調用。簡單的說就是類的自動加載 ; 當你嘗試使用一個 PHP 沒有組織到的類 , 它會尋找一個 __autoload 的全局函數 . 如果存在這個函數 ,PHP 會用一個參數來調用它 , 參數即類的名稱。

  14 、 __invoke()

  當嘗試以調用函數的方式調用一個對象時, __invoke 方法會被自動調用。

  魔術常量 :

  __LINE__ 文件中的當前行號。

  __FILE__ 文件的完整路徑和文件名。如果用在被包含文件中,則返回被包含的文件名。自 PHP 4.0.2 起, __FILE__ 總是包含一個絕對路徑(如果是符號連接,則是解析后的絕對路徑),而在此之前的版本有時會包含一個相對路徑。

  __DIR__ 文件所在的目錄。如果用在被包括文件中,則返回被包括的文件所在的目錄。它等價于 dirname(__FILE__) 。除非是根目錄,否則目錄中名不包括末尾的斜杠。( PHP 5.3.0 中新增) =

  __FUNCTION__ 函數名稱( PHP 4.3.0 新加)。自 PHP 5 起本常量返回該函數被定義時的名字(區分大小寫)。在 PHP 4 中該值總是小寫字母的。

  __CLASS__ 類的名稱( PHP 4.3.0 新加)。自 PHP 5 起本常量返回該類被定義時的名字(區分大小寫)。在 PHP 4 中該值總是小寫字母的。

  __METHOD__ 類的方法名( PHP 5.0.0 新加)。返回該方法被定義時的名字(區分大小寫)。

  __NAMESPACE__ 當前命名空間的名稱(大小寫敏感)。這個常量是在編譯時定義的( PHP 5.3.0 新增)

【php內置變量的操作教程】相關文章:

php高級教程01-23

php靜態成員變量分享05-05

PHP入門基礎教程大全10-28

有關語法和表單的PHP教程08-08

php中static靜態變量的使用方法06-11

如何將Oracle10g內置的安全特性用于PHP10-20

最新國債逆回購操作教程09-15

Excel 表格的基本操作教程參考01-02

《PHP字符串操作》收集整理08-08

關于編程之PHP常用MySql操作的方法06-26

亚洲制服丝袜二区欧美精品,亚洲精品无码视频乱码,日韩av无码一区二区,国产人妖视频一区二区
中文字幕乱码亚洲∧ⅴ日本 | 亚洲美女自拍一区 | 香蕉成年网站未满十八禁 | 亚洲aV免费一区二区三区 | 久久久国产精品视频! | 一本大道香蕉中文在线视频一 |