您好,登錄后才能下訂單哦!
小編給大家分享一下php如何實現從第幾位截取字符串,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
截取方法:1、使用substr()函數,語法“substr(字符串,截取字符串的起始位置,截取字符串的長度)”;2、使用mb_substr()函數,語法“mb_substr(字符串,截取字符串的起始位置,截取字符串的長度,字符編碼)”。
本教程操作環境: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("歡迎來到億速云",0,3)."<br>"; ?>
substr() 函數對英文的處理是沒有任何問題的,但是在開發中我們往往是處理中文字符比較多,substr() 函數雖然也能處理中文,但是不是很完美。那么怎么截取中文字符呢?可以使用mb_substr()函數。
mb_substr()函數截取中文字符串
mb_substr() 函數可以從一個字符串中截取指定的一部分,與 substr() 函數不同的是,mb_substr() 函數不僅對英文字符有效,對中文字符同樣有效。
<?php header("Content-type:text/html;charset=utf-8"); $str = '歡迎訪問億速云,一個在線學習編程的網站。'; echo mb_substr($str,0, 4,"utf-8").'<br>'; echo mb_substr($str, -19,strlen($str),"utf-8").'<br>'; echo mb_substr($str, 4, 6,"utf-8").'<br>'; echo mb_substr($str, 4, -16,"utf-8").'<br>'; echo mb_substr($str, -19, -13,"utf-8").'<br>'; echo mb_substr($str, -19, 6,"utf-8").'<br>'; var_dump(mb_substr($str, 40,"utf-8")); echo '<br>'; var_dump(mb_substr($str, 4, null,"utf-8")); ?>
使用技巧:
使用 mb_substr() 函數截取指定長度的字符串,超出的部分使用“...”代替。
<?php header("Content-type:text/html;charset=utf-8"); $str = '億速云是一個在線學習編程的網站,我們發布了多套文字教程,它們都通俗易懂,深入淺出。'; if(strlen($str)>18){ echo mb_substr($str, 0, 18,"utf-8").'...'; }else{ echo $str; } ?>
以上是“php如何實現從第幾位截取字符串”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。