PHP常用函式
/************************************************************************ PHP魔術方法 *************************************************************************/
1、__construct() 建構函式:例項化物件時被呼叫,當__construct和以類名為函式名的建構函式同時存在時,__construct將被呼叫,另一個不被呼叫。 2、__destruct() 解構函式:當刪除一個物件或物件操作終止時被呼叫(程式結束後物件就摧毀)。 永遠都是最後執行的。 3、__call() 物件呼叫某個方法,若方法存在,則直接呼叫; 若不存在,則會去呼叫__call函式。 4、__get() 讀取一個物件的屬性時,若屬性存在,則直接返回屬性值;若不存在,則會呼叫__get函式。 5、__set() 設定一個物件的屬性時,若屬性存在,則直接賦值; 若不存在,則會呼叫__set函式。 6、__toString() 列印一個物件的時被呼叫。如echo $obj;或print $obj; 7、__clone() 克隆物件時被呼叫。如:$t=new Test();$t1=clone $t; 8、__sleep() serialize之前被呼叫。若物件比較大,想刪減一點東東再序列化,可考慮一下此函式。 9、__wakeup() unserialize時被呼叫,做些物件的初始化工作。 10、__isset() 檢測一個物件的屬性是否存在時被呼叫。如:isset($c->name)。 11、__unset() unset一個物件的屬性時被呼叫。如:unset($c->name)。 12、__set_state()呼叫var_export時,被呼叫。用__set_state的返回值做為var_export的返回值。 13、__autoload() 例項化一個物件時,如果對應的類不存在,則該方法被呼叫。
/************************************************************************ 字串函式 *************************************************************************/
1.strlen: 獲取字串長度,位元組長度
2.substr_count:某字串出現的次數
3.substr: 字串擷取,獲取字串(按照位元組進行擷取) 4.mb_strlenmb_substr strchr:與substr相似,從指定位置擷取一直到最後
5.strrchr (獲取檔案字尾名):與strchr一樣,只是從右邊開始查詢字元 6.strtolower: 所有的字元都小寫(針對英文字母) 7.strtoupper: 所有的字元都大寫 8.strrev: 字串反轉(只能反轉英文:英文儲存只有一個位元組),按照位元組進行反轉
9.strpos: 從字串中找對應字元出現的位置(數字下標),從最左邊開始找 10.strrpos: 與strpos一樣,只是從字串的右邊開始找 11.trim: 去掉函式兩邊的字元,預設是空格
12.str_split: 函式把字串分割到陣列中。 13.chunk_split(): 函式把字串分割為一連串更小的部分 14.str_repeat("Shanghai",5):把字串 "Shanghai " 重複 5 次
15.str_replace('\\', '/', dirname(__DIR__))):替換
16.ucfirst: 首字母大寫
/************************************************************************ 時間函式 *************************************************************************/
1.time:得到當前時間的時間戳(整型:從格林威治時間1970年1月1日0時0分0秒開始)秒數
2.date:時間序列化函式,將指定的時間戳轉換成規定時間日期的顯示格式(隨意的字串:有專業的格式符規定), 如果沒有指定時間戳,系統預設使用當前時間的時間戳
3.strtotime:時間日期格式的字串轉換成對應的時間戳(只要是正確的英語時間表達方式,都可以進行轉換)
4.microtime:微秒時間戳,根據不同的要求返回不同的結果 混合 5.microtime (布林型別 ),可以返回一個浮點數的時間,也可以返回一個數組(時間戳和微秒數)
/************************************************************************ 數值操作函式 *************************************************************************/
1.abs: 絕對值
2.floor: 向下取整 floor(3.2) 結果等於3
3.ceil: 向上取整 round:四捨五入
4.rand: 取得一個指定範圍內的隨機整數
5.mt_rand:取得一個指定範圍內的隨機整數(效率更高)
6.min:PHP:會將非數值的 string 當成 0,但如果這個正是最小的數值則仍然會返回一個字串。 如果多個引數都求值為 0 且是最小值,min() 會返回按字母表順序最小的字串, 如果其中沒有字串的話,則返回數值的 0; max:PHP 會將非數值的字串當成 0,但如果這個正是最大的數值則仍然會返回一個字串。如果多個引數都求值為 0 且是最大值,max() 會返回其中數值的 0,如果引數中沒有數值的 0,則返回按字母表順序最大的字串。對於多個數組,max從左到右比較;如果同時出現數組和非陣列引數總把陣列作為最大值返回;
/************************************************************************ 陣列函式 *************************************************************************/
1.count() :非陣列返回1
2.key: 獲取當前陣列當前指標所指向的元素的下標
3.current: 獲取的當前指標指向元素的數值
4.next: 獲取下一個元素的值,並且將指標下移 5.prev: 獲取上一個元素的值,並且將指標上移 6.end : 將指標移到陣列的最後一個元素,並返回最終指標位置的值 7.reset: 將指標移到陣列的第一個元素,返回最終指標位置的值 8.array_keys: 獲取一個數組的所有鍵名,返回一個索引陣列
9.array_values:獲取一個數組的所有值,返回一個索引陣列
10.explode:爆炸,將一個字串按照某個指定的規則(通常是特殊字元), 將陣列分成多個段,每一段都當做一個數組的元素,返回一個索引陣列
11.split 類似 explode explode('.', 'abc.txt')等於split('\.','abc.txt')
12.implode:粘合,將一個數組內部的所有元素按照某個指定的規則(特殊字元),將所有的元素拼接成一個字串
13.join(): 把陣列元素組合為一個字串
14.array_merge:合併,指的是將兩個陣列中的元素進行累計。如果後面的陣列與前面的陣列有下標(鍵名:關聯)相同的 那麼後面的元素的值會覆蓋前面的;如果是索引的相同下標,會自動的修改下標疊加到前面的數組裡。
15.array_reverse:返回反轉後的陣列
16.array_flip:交換陣列中的鍵和值