2017年5月8日 星期一

[php] Call to undefined function mb_strlen() 的解決方式


使用 php -m 去看一下有相關的 extension 嗎
或是使用
<?php
phpinfo();

來確認 php 的 extension 有哪些。

若是已經有安裝 extension
可以找出來位置,在 /etc/php.ini 加入位置

 736 extension_dir = "/usr/lib64/php/modules/"

若是沒有
使用 php55w-mbstring.x86_64

$yum install php56w-mbstring
(可以先使用 yum search 去找出適合安裝的 package)

找出 modules 安裝在哪

[root@c1 vagrant]# rpm -ql php56w-mbstring
/etc/php-zts.d/mbstring.ini
/etc/php.d/mbstring.ini
/usr/lib64/php-zts/modules/mbstring.so
/usr/lib64/php/modules/mbstring.so
/usr/share/doc/php56w-mbstring-5.6.30
/usr/share/doc/php56w-mbstring-5.6.30/libmbfl_LICENSE
/usr/share/doc/php56w-mbstring-5.6.30/oniguruma_COPYING
/usr/share/doc/php56w-mbstring-5.6.30/ucgendat_LICENSE

設定好後。

[root@c1 vagrant]# php -m
[PHP Modules]
bz2
calendar
Core
ctype
curl
date
dom
ereg
exif
fileinfo
filter
ftp
gettext
gmp
hash
iconv
igbinary
json
libxml
mbstring
mhash
mysql
mysqli
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
posix
readline
redis
Reflection
session
shmop
SimpleXML
sockets
solr
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xml
xmlreader
xmlwriter
xsl
zip
zlib

[Zend Modules]

沒有留言:

張貼留言