首頁  >  文章  >  後端開發  >  php怎麼實作從第幾位截取字串

php怎麼實作從第幾位截取字串

青灯夜游
青灯夜游原創
2022-02-15 11:59:563387瀏覽

截取方法:1、使用substr()函數,語法「substr(字串,截取字串的起始位置,截取字串的長度)」;2、使用mb_substr()函數,語法「 mb_substr(字串,截取字串的起始位置,截取字串的長度,字元編碼)」。

php怎麼實作從第幾位截取字串

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

在php中,想要從指定位置開始截取字串,可以使用substr()和mb_substr()函數。

substr()和mb_substr()函數都可以實作截取字串,兩者的差異只在於對中文字元的處理。下面來了解這兩個函數。

substr()函數截取字串

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

範例:

<?php
echo substr("Hello world",0,10)."<br>";
echo substr("Hello world",1,8)."<br>";
echo substr("Hello world",0,5)."<br>";
echo substr("Hello world",6,6)."<br><br>";
 
echo substr("Hello world",0,-1)."<br>";
echo substr("Hello world",-10,-2)."<br>";
echo substr("Hello world",0,-6)."<br>";
echo substr("Hello world",-2-3)."<br><br>";

echo substr("欢迎来到PHP中文网",0,3)."<br>";
?>

php怎麼實作從第幾位截取字串

substr() 函數對英文的處理是沒有任何問題的,但是在開發中我們往往是處理中文字元比較多,substr() 函數雖然也能處理中文,但不是很完美。那怎麼截取中文字元呢?可以使用mb_substr()函數。

mb_substr()函數截取中文字串

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

<?php
header("Content-type:text/html;charset=utf-8");
$str = &#39;欢迎访问PHP中文网,一个在线学习编程的网站。&#39;;
echo mb_substr($str,0, 4,"utf-8").&#39;<br>&#39;;
echo mb_substr($str, -19,strlen($str),"utf-8").&#39;<br>&#39;;
echo mb_substr($str, 4, 6,"utf-8").&#39;<br>&#39;;
echo mb_substr($str, 4, -16,"utf-8").&#39;<br>&#39;;
echo mb_substr($str, -19, -13,"utf-8").&#39;<br>&#39;;
echo mb_substr($str, -19, 6,"utf-8").&#39;<br>&#39;;
var_dump(mb_substr($str, 40,"utf-8"));
echo &#39;<br>&#39;;
var_dump(mb_substr($str, 4, null,"utf-8"));
?>

php怎麼實作從第幾位截取字串

使用技巧:

使用 mb_substr() 函數截取指定長度的字串,超出的部分使用「...」取代。

<?php
header("Content-type:text/html;charset=utf-8");
$str = &#39;php中文网是一个在线学习编程的网站,我们发布了多套文字教程,它们都通俗易懂,深入浅出。&#39;;
if(strlen($str)>18){
    echo mb_substr($str, 0, 18,"utf-8").&#39;...&#39;;
}else{
    echo $str;
}
?>

php怎麼實作從第幾位截取字串

推薦學習:《PHP影片教學

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

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