php使用substr()函數截取字串出現亂碼的解決方法是:使用mb_substr()函數即可,因為substr()函數只針對英文字元。具體使用方法:【mb_substr($str,0,2,"UTF8")】。
(推薦教學:php教學)
原因分析:
substr() 函數只針對英文字符,如果我們要分割中文字符,則需要使用mb_substr()函數。
函數介紹:
mb_substr() 函數傳回字串的一部分。
語法:
mb_substr(string $str, int $start[,int $length = NULL[, string $encoding = mb_internal_encoding()]]):string
參數介紹:
#str 必要。從該 string 中提取子字串
start 必需。規定在字串的何處開始
length 可選。規定要傳回的字串長度。預設是直到字串的結尾
encoding 可選。字符編碼。如果省略,則使用內部字元編碼
傳回值:
傳回字串的擷取部分,如果失敗則傳回 FALSE,或傳回一個空字串。
程式碼實作:
<?php header("Content-Type: text/html; charset=utf-8"); $str="网站工作室欢迎您!"; echo mb_strlen($str,"UTF8")."<br>"; echo mb_substr($str,0,2,"UTF8")."<br>"; ?>
以上是php使用substr()函數截取字串出現亂碼怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!