本文目錄一覽:
PHP怎麼用substr函數截取字元串中的某部分
1、從第4個字元開始截取到字元串末尾,類似asp中的left:
輸出: lacecake.com
2、PHP substr函數從右邊截取3個字元,類似asp中的right:
輸出:.com
3、PHP substr函數從第4個字元開始截取3個字元:
輸出:lac
4、有時我們知道一個字元串的開始和結尾,中間是不定長的字元,這時除了用PHP substr函數的正則外我們還可以用substr實現(當然要得到中間的字元方法有N種,在此只是舉例substr的應用):
本例去掉開頭4個字元和結尾3個字元,輸出中間的字元串:
輸出:lacecake.
php 怎麼截取漢字字元串?
?php
$str = ‘這樣一來我的字元串就不會有亂碼^_^’;
echo “mb_substr:” . mb_substr($str, 0, 7, ‘utf-8’);
//結果:這樣一來我的字
echo “
“;
echo “mb_strcut:” . mb_strcut($str, 0, 6, ‘utf-8’);
//結果:這樣
?
首先
1.確保你的Windows/system32下有php_mbstring.dll這個文件,沒有就從你Php安裝目錄extensions里拷入Windows/system32裡面。
2.在windows目錄下找到php.ini打開編輯,搜索mbstring.dll,找到
;extension=php_mbstring.dll把前面的;號去掉,這樣mb_substr函數就可以生效了
mb_strcut函數功能也可以截取字元串長度,下面實例具體看看區別在哪:
mb_substr();
php字元截取
當漢字被截斷時,根據編碼規則他總是要把後邊的其他字元拉過來一起作為漢字解釋,這就是出現亂碼的原因。而值為0x81到0xff與0x00組合始終都顯示為「空」
根據這一特點,在substr的結果後面補上一個chr(0),就可以防止出現亂碼了
先看段代碼
複製代碼
代碼如下:
?php
$len
=
15;
$str
=
“這個新聞或是文章的標題很長,需要只顯示前面一些字,後面用…來代替”;
echo
strlen($str)=$len
?
$str
:
(substr($str,0,$len).chr(0).”…”);
?
chr(0)相關知識:
null是什麼都沒有,而chr(0)的值是0。表示成16進位是0x00,表示成二進位是00000000
雖然chr(0)不會顯示出什麼,但是他是一個字元。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/155359.html