mbstring(Multi-Byte String)是 PHP 處理多字節字符編碼(如 UTF-8、GBK、Big5)的核心擴展,提供了字符串長度計算、截取、轉換、正則匹配等一系列多字節安全函數。本文匯總兩種主流安裝方式,助你快速啟用該擴展。
# 1. 安裝擴展包
yum install php-mbstring
# 2. 修改 php.ini 啟用擴展(關鍵步驟,部分面板不會自動配置)
echo 'extension=mbstring.so' >> /etc/php.ini
# 3. 重啟 Web 服務生效
service httpd restart # Apache
# 或
systemctl restart php-fpm # Nginx + PHP-FPM
以 PHP 5.3.6 為例,安裝目錄 /usr/local/php:
# 1. 進入擴展源碼目錄
cd /usr/src/php-5.3.6/ext/mbstring
# 2. 生成 configure 腳本
/usr/local/php/bin/phpize
# 3. 配置編譯參數
./configure --with-php-config=/usr/local/php/bin/php-config
# 4. 編譯並安裝
make && make install
# 5. 寫入 php.ini
echo 'extension=mbstring.so' >> /usr/local/php/lib/php.ini
# 6. 重啟服務
/usr/local/apache2/bin/apachectl restart
# 檢查 PHP 版本與擴展加載情況
/usr/local/php/bin/php -v
/usr/local/php/bin/php -m | grep mbstring
# 或瀏覽 phpinfo() 頁面搜索 mbstring 區塊
php-devel 包(yum install php-devel)。--with-php-config 指向正確的 php-config 路徑。php.ini 路徑是否正確(php --ini 查看),確認無語法錯誤,重啟服務。| 函數 | 用途 |
|---|---|
| mb_strlen() | 獲取字符串長度(按字符而非字節) |
| mb_substr() | 多字節安全截取子串 |
| mb_convert_encoding() | 字符編碼轉換 |
| mb_detect_encoding() | 檢測字符串編碼 |
| mb_strpos()/mb_strrpos() | 多字節安全查找位置 |
| mb_ereg_*() | 多字節正則匹配系列 |
| mb_http_input/output() | HTTP 輸入輸出編碼控制 |
優先使用包管理器安裝,簡單穩定;源碼編譯適合定制環境。安裝後務必驗證 php -m 或 phpinfo() 中出現 mbstring。啟用後,即可安全處理中文、日文、韓文等多字節字符,避免 strlen()、substr() 等單字節函數導致的亂碼與截斷問題。