我想看看你对我目前正在经历的这种担忧的看法。 事实证明:
<?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
我不太明白mb_substr
的意思,这是PHP版本错误吗?
我目前正在使用PHP 5.3.19
答案 0 :(得分:20)
mb_substr()
是substr()
的多字节安全版本,这意味着它适用于字符而非字节。这在UTF-8中最为明显,其中许多字符由两个或更多字节表示。
根据installation instructions,mbstring
不是内置扩展程序。您必须通过使用适当的文件并正确配置PHP来启用它。有些信息可以在提供的链接中找到,您的虚拟主机应该可以帮助您完成剩下的工作。
对于Linux,请使用
进行安装 sudo apt-get install php7.0-mbstring
答案 1 :(得分:15)
把它扔进终端:
php -m | grep mb
如果显示mbstring
,那么它应该有用。
答案 2 :(得分:1)
如果您具有root访问权限,则可以使用WHM Panel或使用命令行进行配置。我会告诉您如何使用WHM Panel来做到这一点
1.使用Root用户登录WHM
2.转到Easyapache
3.转到先前保存的配置
4.单击“基于配置文件开始自定义”
5.不要更改apache和php版本,只需单击下一步
6.单击php配置底部的穷举选项列表
7.选中MBString选项
附近的复选框
8.保存和建造
的 9。如果需要一段时间,请不要关闭浏览器窗口。请耐心等待。
你做完了!!!
答案 3 :(得分:-1)
错误告诉您正在尝试使用不存在的名为mb_substr的函数。
也许您可以使用substr函数http://php.net/manual/en/function.substr.php来实现相同的结果。 substr(strip_tags($ disc_t),0,10)将返回strip_tags($ disc_t)结果的前十个字符。