提问人:Blahwhore 提问时间:12/26/2012 最后编辑:LeighBlahwhore 更新时间:2/22/2023 访问量:71654
致命错误:调用未定义的函数 mb_substr()
Fatal error: Call to undefined function mb_substr()
问:
我想看看你对我目前遇到的这个问题的意见。 事实证明:
<?php
$disc_t=$name;
if(strlen($disc_t)<=15)
{
$name_now=mb_substr( strip_tags($disc_t), 0, 10 ).'';
}
else
{
$name_now=mb_substr( strip_tags($disc_t), 0, 10).'...';
}
?>
不知何故在网站上给了我一个错误,错误显示:
Fatal error: Call to undefined function mb_substr() in /home/(website)/public_html/index.php on line 308
我不太明白他们的意思,这是PHP版本错误吗?
我目前正在使用 PHP 5.3.19mb_substr
答:
mb_substr(
) 是 substr()
的多字节安全版本,这意味着它使用字符而不是字节。这在 UTF-8 中最为明显,其中许多字符由两个或多个字节表示。
根据安装说明,不是内置扩展。您必须通过拥有适当的文件并正确配置 PHP 来启用它。一些信息可以在提供的链接中找到,您的虚拟主机应该能够帮助您完成其余的工作。mbstring
要查看是否安装了 mbstring,请执行以下操作:php -m | grep mbstring
对于 Linux,请使用
sudo apt-get install php-mbstring
评论
php7.0-mbstring
php-mbstring
该错误告诉您,您正在尝试使用一个名为 mb_substr 的函数,该函数不存在。
也许您可以使用 substr 函数 http://php.net/manual/en/function.substr.php 来获得相同的结果。substr(strip_tags($disc_t), 0, 10) 将返回 strip_tags($disc_t) 结果的前十个字符。
把它扔到终端里:
php -m | grep mb
如果出现,那么它应该可以工作。mbstring
评论
mbstring.encoding_translation
php.ini
extension=
mbstring
;
;
如果您具有 root 访问权限,则可以使用 WHM 面板或使用命令行对其进行配置。我会让您知道如何使用 WHM Panel 来做到这一点。
1. 使用 Root 用户
2 登录您的 WHM。转到 Easyapache
3。转到之前保存的配置
4。单击“开始基于配置文件进行自定义”。
5.不要更改apache和php版本,只需单击下一步即可。
6. 单击 php 配置
7 底部的详尽选项列表。选中 MBString 选项
8 附近的复选框。保存并构建
9.如果需要一段时间,请不要关闭浏览器窗口。要有耐心。
大功告成!!
通过在 Red Hat Linux 8 中执行以下软件包,此问题已得到解决。
dnf install php-mbstring
评论