基本語法:string substr (string string, int start [, int length])
string 是要找的字串;start 是字串開始的地方,需為整數;length 是要找的字串長度,需為整數。
- start - 如果為正,則從指定開始的位置起算;如果為負,則從字尾開始算;如果為零,則從字串開始的位置起算。
- length - 如果為正,從取出的字串指定位置起算;如果為負,則從取出的字串後面開始算。
php substr() 範例
echo substr("abcde", -1); <= 這樣會輸出 e,因為從字尾開始算一個字母。
echo substr("abcde", -2); <= 這樣會輸出 de,因為從字尾開始算,共取兩個字母。
echo substr("abcd", -3, 1); <= 這樣會輸出 b,因為從字尾開始算,先取三個字母為 bcd,接著長度在從 bcd 取 1 位。
這樣應該有稍微了解一些了,繼續往下看幾個 length 設為負値的範例
echo substr("abcdef", 0, -1); <= 這樣會輸出 abcde,因為程式先從零開始取整段字串,長度再由字串尾扣掉一個。
echo substr("abcdef", 2, -1); <= 這樣會輸出 cde,因為程式先從第二個字元開始,取得 cdef 這幾個字,再由取得的字串尾扣掉一個。
echo substr("abcdef", 5, -2); <= 這樣會回傳 false,因為程式一開始先取得 f,然後扣掉五個字元,就什麼都沒有囉!
echo substr("abcdef", -4, -2); <= 這樣會輸出 cd,因為程式先取得 cdef 這四個字元,再從其中的字尾開始扣掉兩個字元。
以上就是簡單的實際範例,請動手做做看吧!剛開始可能比較不好了解,但知道其規則後其實還蠻簡單的呢!
相關函式
- preg_match
- PHP trim 函數
- mb_substr