首頁  >  文章  >  後端開發  >  php怎麼截取字串的前幾位

php怎麼截取字串的前幾位

青灯夜游
青灯夜游原創
2022-07-29 19:31:359180瀏覽

兩種截取方法:1、使用substr()函數,只需要將此函數的第二個參數設為0,第三個參數設為N即可截取英文字串的前N位,語法“substr(字串,0,N)”。 2.使用mb_substr()函數,只需要將函數的第二個參數設為0,第三個參數設為N即可截取字串的前N位,語法「mb_substr(字串,0,N,字符編碼)」。

php怎麼截取字串的前幾位

本教學操作環境: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(&#39;content-type:text/html;charset=utf-8&#39;);   
$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>";
?>

php怎麼截取字串的前幾位

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

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$str="欢迎来到PHP中文网";
echo "原字符串:".$str."<br>";
echo "截取前1位:".substr($str,0,1)."<br>";
echo "截取前2位:".substr($str,0,2)."<br>";
?>

php怎麼截取字串的前幾位

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

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

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

mb_substr(string,start,length,encoding)

參數描述startlength##encoding可選。字符編碼。如果省略,則使用內部字元編碼。 只需要將函數的第二個參數設為0,第三個參數設為N即可截取字串的前N位。
<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$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>";
?>
#str##必需。從該 string 中提取子字串。
#必要。規定在字串的何處開始。 正數- 在字串的指定位置開始
  • 負數- 在從字串結尾的指定位置開始
  • 0 - 在字串中的第一個字符處開始
可選。規定要傳回的字串長度。預設是直到字串的結尾。 正數- 從start 參數所在的位置回傳
  • 負數- 從字串末端回傳

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$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>";
?>

php怎麼截取字串的前幾位

推薦學習:《php怎麼截取字串的前幾位PHP影片教學

以上是php怎麼截取字串的前幾位的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn