php怎麼擷取字串的前幾位

2022-07-29 22:03:02

兩種擷取方法:1、使用substr()函數,只需要將該函數的第二個引數設定為0,第三個引數設定為N即可擷取英文字串的前N位,語法「substr(字串,0,N)」。2、使用mb_substr()函數,只需要將該函數的第二個引數設定為0,第三個引數設定為N即可擷取字串的前N位,語法「mb_substr(字串,0,N,字元編碼)」。

本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦

PHP中想要擷取字串,可以使用兩個函數:substr()函數或mb_substr()函數。

方法1:使用substr()函數擷取字串

substr() 函數可以從字串的指定位置擷取一定長度的字元。

substr(string,start,length)
引數描述
string必需。規定要返回其中一部分的字串。
start必需。規定在字串的何處開始。
  • 正數 - 在字串的指定位置開始
  • 負數 - 在從字串結尾的指定位置開始
  • 0 - 在字串中的第一個字元處開始
length可選。規定要返回的字串長度。預設是直到字串的結尾。
  • 正數 - 從 start 引數所在的位置返回
  • 負數 - 從字串末端返回

只需要將該函數的第二個引數設定為0,第三個引數設定為N即可擷取字串的前N位。

<?php
header('content-type:text/html;charset=utf-8');   
$str="Hello world";
echo "原字串:".$str."<br>";
echo "擷取前1位:".substr($str,0,1)."<br>";
echo "擷取前2位:".substr($str,0,2)."<br>";
echo "擷取前3位:".substr($str,0,3)."<br>";
echo "擷取前4位元:".substr($str,0,4)."<br>";
echo "擷取前5位:".substr($str,0,5)."<br>";
?>

1.png

注:substr() 函數對英文的處理是沒有任何問題的,但是在開發中我們往往是處理中文字元比較多,substr() 函數雖然也能處理中文,但是不是很完美。

<?php
header('content-type:text/html;charset=utf-8');   
$str="歡迎來到PHP中文網";
echo "原字串:".$str."<br>";
echo "擷取前1位:".substr($str,0,1)."<br>";
echo "擷取前2位:".substr($str,0,2)."<br>";
?>

2.png

那麼怎麼擷取中文字元呢?可以使用mb_substr()函數。

方法2:使用mb_substr()函數擷取字串

mb_substr() 函數可以從一個字串中擷取指定的一部分,與 substr() 函數不同的是,mb_substr() 函數不僅對英文字元有效,對中文字元同樣有效。

mb_substr(string,start,length,encoding)
引數描述
str必需。從該 string 中提取子字串。
start必需。規定在字串的何處開始。
  • 正數 - 在字串的指定位置開始
  • 負數 - 在從字串結尾的指定位置開始
  • 0 - 在字串中的第一個字元處開始
length可選。規定要返回的字串長度。預設是直到字串的結尾。
  • 正數 - 從 start 引數所在的位置返回
  • 負數 - 從字串末端返回
encoding可選。字元編碼。如果省略,則使用內部字元編碼。

只需要將該函數的第二個引數設定為0,第三個引數設定為N即可擷取字串的前N位。

<?php
header('content-type:text/html;charset=utf-8');   
$str="歡迎來到PHP中文網";
echo "原字串:".$str."<br>";
echo "擷取前1位:".mb_substr($str,0,1,"utf-8")."<br>";
echo "擷取前2位:".mb_substr($str,0,2,"utf-8")."<br>";
?>

3.png

<?php
header('content-type:text/html;charset=utf-8');   
$str="Hello world";
echo "原字串:".$str."<br>";
echo "擷取前1位:".mb_substr($str,0,1,"utf-8")."<br>";
echo "擷取前2位:".mb_substr($str,0,2,"utf-8")."<br>";
?>

4.png

推薦學習:《》

以上就是php怎麼擷取字串的前幾位的詳細內容,更多請關注TW511.COM其它相關文章!