3種方法:1、用substr(),第二個參數設為0,第三個參數設為N即可,語法「substr(字串,0,N)」。 2.用mb_substr(),第二個參數設為0,第三個參數設為N即可,語法「mb_substr(字串,0,N,字元編碼)」。 3.用substr_replace(),將第二個參數設為0,第三個參數設為N,語法「substr_replace(字串,'',N)」。

本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
php想要截取字串從0到第N位的字符,有3個函數可以實現:
使用substr()函數
使用mb_substr()函數
使用substr_replace()函數
#方法1:使用substr()函數截取字串
substr() 函數可以從字串的指定位置截取一定長度的字元。
substr(string,start,length)
登入後複製
參數 | 描述 |
---|
#string | 必要。規定要傳回其中一部分的字串。 |
start | #必要。規定在字串的何處開始。 - 正數- 在字串的指定位置開始
- 負數- 在從字串結尾的指定位置開始
- 0 - 在字串中的第一個字符處開始
|
length | 可選。規定要傳回的字串長度。預設是直到字串的結尾。 - 正數- 從start 參數所在的位置回傳
- 負數- 從字串末端回傳
|
##只需要將函數的第二個參數設為0,第三個參數設為N即可
<?php
header('content-type:text/html;charset=utf-8');
$str="Hello world";
echo "原字符串:".$str."<br>";
echo "截取从0到第1位的字符:".substr($str,0,1)."<br>";
echo "截取从0到第2位的字符:".substr($str,0,2)."<br>";
echo "截取从0到第3位的字符:".substr($str,0,3)."<br>";
echo "截取从0到第4位的字符:".substr($str,0,4)."<br>";
echo "截取从0到第5位的字符:".substr($str,0,5)."<br>";
?>
登入後複製

#:substr() 函數對英文的處理是沒有任何問題的,但是在開發中我們往往是處理中文字元比較多,substr() 函數雖然也能處理中文,但不是很完美。那怎麼截取中文字元呢?可以使用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即可<?php
header('content-type:text/html;charset=utf-8');
$str="欢迎来到PHP中文网";
echo "原字符串:".$str."<br>";
echo "截取从0到第2位的字符:".mb_substr($str,0,2,"utf-8")."<br>";
echo "截取从0到第3位的字符:".mb_substr($str,0,3,"utf-8")."<br>";
echo "截取从0到第4位的字符:".mb_substr($str,0,4,"utf-8")."<br>";
?>
登入後複製
#方法3:使用substr_replace()函數刪除N位元後的字元
substr_replace() 函數把字串的一部分替換為另一個字串,並回傳被替換的字串。
只需要使用substr_replace() 函數將N位元後的字元都替換為空字符,保留0到第N位元的字元並返回即可。
substr_replace(string,replacement,start,length)
登入後複製
參數描述 | |
#string必要。規定要檢查的字串。 | |
replacement必要。規定要插入的字串。 | |
start#必要。規定在字串的何處開始替換。 | 正數- 在字串的指定位置開始負數- 在從字串結尾的指定位置開始0 - 在字串中的第一個字符處開始 |
length可選。規定要替換多少個字元。預設是與字串長度相同。 | 正數- 被替換的字串長度負數- 從字串末端開始的被替換字元數0 - 插入而非替換 | #只需将第二个参数设置为空字符,第三个参数设置为N,第四个参数省略即可。
<?php
header('content-type:text/html;charset=utf-8');
$str="Hello world";
echo "原字符串:".$str."<br>";
echo "截取从0到第2位的字符:".substr_replace($str,'',2)."<br>";
echo "截取从0到第3位的字符:".substr_replace($str,'',3)."<br>";
echo "截取从0到第4位的字符:".substr_replace($str,'',4)."<br>";
?>
登入後複製

推荐学习:《PHP视频教程》
以上是php怎麼截取字串從0到第N位的字符的詳細內容。更多資訊請關注PHP中文網其他相關文章!
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
-
2023-04-26 17:59:18
-
2023-04-26 17:47:48
-
2023-04-26 17:41:42
-
2023-04-26 17:37:05
-
2023-04-26 17:31:25
-
2023-04-26 17:27:32
-
2023-04-25 19:57:58
-
2023-04-25 19:53:11
-
2023-04-25 19:49:11
-
2023-04-25 19:41:54
最新問題
-
2025-03-26 16:19:41
-
2025-03-26 16:18:41
-
2025-03-26 16:17:40
-
2025-03-26 16:16:38
-
2025-03-26 16:15:35