php沒有mb_substr()嗎

2022-12-23 22:01:23
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦

php有mb_substr()函數。在php中mb_substr()是用來截中文與英文字串的函數。

mb_substr()函數在php中預設是不被支援的,我們需要在windows目錄下找到並開啟php.ini組態檔,搜尋「mbstring.dll」,找到「;extension=php_mbstring.dll」項,把前面的「;」號去掉才可以使用mb_substr()函數。

1.png

mb_substr() 函數介紹

mb_substr() 函數是返回字串的一部分, substr() 函數只針對英文字元,如果要分割的中文文字則需要使用 mb_substr()。

語法

mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding() ]] ) : string
登入後複製
引數描述
str必需。從該 string 中提取子字串。
start必需。1. 規定在字串的何處開始。 2. 正數 - 在字串的指定位置開始負數 - 在從字串結尾的指定位置開始 3. 0 - 在字串中的第一個字元處開始
length可選。規定要返回的字串長度。1. 預設是直到字串的結尾。2. 正數 - 從 start 引數所在的位置返回3. 負數 - 從字串末端返回
encoding可選。字元編碼。如果省略,則使用內部字元編碼。

註釋:如果 start 引數是負數且 length 小於或等於 start,則 length 為 0。

技術細節

返回值:返回字串的提取部分,如果失敗則返回 FALSE,或者返回一個空字串。
PHP 版本:4+

使用範例:擷取字串的前N位

<?php
header('content-type:text/html;charset=utf-8');   
$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>";
?>
登入後複製

3.png

<?php
header('content-type:text/html;charset=utf-8');   
$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>";
?>
登入後複製

4.png

推薦學習:《》

以上就是php沒有mb_substr()嗎的詳細內容,更多請關注TW511.COM其它相關文章!