我使用了PHP 7.2版本,模块列表如下:
php -m
[PHP Modules]
bz2
Core
ctype
curl
date
dom
exif
fileinfo
filter
gd
gettext
hash
iconv
intl
json
libxml
mbstring
mcrypt
openssl
pcntl
pcre
PDO
Phar
Reflection
session
SimpleXML
soap
sodium
SPL
standard
tokenizer
xml
xmlreader
xmlwriter
zip
zlib
[Zend Modules]在这个列表中,它显示了mbstring,但在浏览器上的info.php中,它没有mbstring,当我搜索...anyone时,请帮助我解决这个问题。
提前谢谢。
发布于 2020-07-10 11:19:47
cli和apache或nginx模块有不同的配置路径,可能还有不同的配置路径。您的模块已在cli上启用,但已禁用为web。
你需要检查你的php.ini
如果您尝试这样做(在终端上):
$ php -a
phpinfo();在某个点上,您可以看到php.ini路径。
在您的www目录上执行相同的操作,创建一个phpinfo.php并调用phpinfo()函数,并检查php.ini路径。
可能不是相同的路径,也不是相同的配置,因为我们有一个ini文件到cli和apache/nginx模块。因此,您可以修复它,查看哪个文件正在加载模块,并指向web上的模块。
如果处于不同的路径,则可能需要在web版本上启用或安装mbstring模块。
考虑到您使用的是php-fpm,您可以使用以下命令安装mbstring模块:
php-fpm install mbstring
发布于 2020-07-11 04:07:52
在的情况下,
extension=php_mbstring.dll
php.ini文件
extension_dir = "ext" to extension_dir = "C:\php\ext" (可能根据系统不同)从;extension=php_mbstring.dll中删除semicolon并将其更改为
;extension=php_mcrypt.dll启用mcrypt。(通常phpmyadmin还会给mcrypt)
对于ubuntu,
打开terminal
sudo apt-get install php-mbstring php7.0-mbstring php-gettext libapache2-mod-php7.0
sudo systemctl restart apache2
如果上述方法不起作用,显式启用mbstring和mcrypt扩展:
sudo phpenmod mcrypt
sudo phpenmod mbstring
sudo systemctl restart apache2希望它对你有用!!
https://stackoverflow.com/questions/62832991
复制相似问题