问题标签 [mbstring]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1295 浏览

php - 更改 PHP 版本后调用 Xampp 中未定义的函数 mb_detect_encoding() (PHPmyadmin)

我将默认 PHP 版本更改为较旧的版本(5.3.28),但是当我尝试跳转到 PHPMyadmin 时出现错误

*致命错误:在第 177 行调用 C:\xampp2\phpMyAdmin\libraries\php-gettext\gettext.inc 中未定义的函数 mb_detect_encoding()*

浏览这个论坛我发现这意味着我需要 mbstring 库

我在 php.ini 中启用了它,如下所示:extension=php_mbstring.dll

但我一直收到同样的错误。我检查了扩展目录

extension_dir="C:\xampp2\php5328\ext"

它是正确的,扩展文件也在那里(php_mbstring.dll)

但是当我加载 phpinfo() 时,我找不到任何提及 mbstring 的内容。

有任何想法吗?

0 投票
1 回答
750 浏览

php - mbstring 模块安装 redhat apache

我有一台无法访问 Internet 的机器,并且想使用 Redhat OS 为 apache 安装 mbstring 模块

我无法使用 yum install,也找不到在同一问题的许多答案中提到的 ./configure 文件。

下载了rpm文件并安装了它,但没有运气。

有人可以为我提供模块的逐步安装吗?

0 投票
5 回答
6278 浏览

php - 调试 iconv_strlen 错误 - PHP 5.5

我正在尝试使用 Laravel 和 DomPDF 将文档导出为 PDF。这适用于我的 Mac,但不适用于登台或实时服务器。错误如下:

我不知道这意味着什么,也找不到任何解决方案。

iconv_strlen(): Wrong charset, conversion from8位//忽略'到UCS-4LE' is not allowed

我尝试将以下内容添加到 .htaccess

我尝试将以下内容添加到我试图为其生成 pdf 的视图顶部:

如果您需要任何进一步的信息来帮助我进行调试,请在评论中提问。

0 投票
0 回答
334 浏览

php - mb_substr - 如何使它工作?

我正在创建一个共轭器。当用户输入一个动词时,程序会为每个人更改最后 2 个字符并带有相应的结尾。

问题是它只能在没有特殊字符的情况下工作 - 如果我使用任何特殊字符,它不会返回任何内容。这是代码:

我已经知道 substr 只适用于一个字符 = 一个字节,而特殊字符则不然,所以我一直在尝试 mb_substr,但没有成功。重要的是动词的长度会有所不同。

我很抱歉从几个月前复制了我自己的问题 - 我得到了部分解决方案,但不幸的是我无法从这台计算机访问它。

0 投票
0 回答
26 浏览

php - PHP字符集问题(不同)

我有一个与字符集问题有关的问题,但它有所不同,因为我没有任何土耳其字符问题。但是,如果我想它更高,那将是一个问题。

我的代码如下

错误如下

预期:“Şike” 显示:“?�ike”

预期:“伊斯坦布尔” 显示:“伊斯坦布尔”

0 投票
0 回答
50 浏览

php - 哪些 PHP 字符串函数需要替换为 mb_* 才能保证 UTF-8 安全?

我很高兴在我的应用程序中使用所有多字节字符串函数,但是当使用外部库时,查找和替换它们会很痛苦。

鉴于我可以控制外部输入以便只存在 UTF-8 数据,因此比较两种不同编码类型所产生的问题不会成为问题(即str_replace原样没问题)。

那么我需要mb_*等价替换哪些字符串函数?

到目前为止,我确定我需要更换

  • strpos()
  • strlen()
  • substr()

还有其他人吗?

或者,使用重载是一个可行的选择,还是这可能会导致问题?

0 投票
1 回答
3690 浏览

php - json_encode 在处理多字节子串时返回 false

我正在使用几乎最新版本的 php ( 5.5.11 ),这就是问题所在。当我使用json_encode字符串的一部分时,它返回false。一开始我使用的是substr,但后来我意识到在处理非英文字符串时这是完全错误的。但即使在我使用之后,mb_substr我仍然看到json_encode返回false

如你所见,

返回false, 和

返回正确的 json。

在查看json_last_error时,我发现这是由于Malformed UTF-8 characters, possibly incorrectly encoded. 所以问题是 mb_substr 给了我格式错误的字符。

当我查看时,var_dump($a);我看到它产生了string(10) "に搭載�"(我假设每个日语字符是 3 个字节,并且那个问号是格式错误的字符)。

那么我怎样才能以这样的方式从字符串中获取子字符串,而不会得到格式错误的字符串呢?

0 投票
0 回答
1153 浏览

php - FreeBSD 10.0-RELEASE #0 php5 apache2.2,不加载扩展,cli 工作正常

mbstring如果我从控制台运行 php index.php,它会显示 正在加载。

但是,如果我从网站(Apache 2.2)加载它,它不会加载mbstring.

Apache 2.2 配置www:wwwuser:group.

我重新安装了 Apache 2.2、PHP、PHP5-exensions、mod_php5 php5 很多次,仍然看到同样的问题。也试过 apache24 php55,同样的问题。

运行 Freebsd 8 时没有问题。


0 投票
0 回答
134 浏览

php - mbstring apache php 服务器 2008

我刚刚用 apache 和 php 完成了 server 2008 的全新安装。

一切都很好,但 phpmyadmin 有问题。进一步挖掘似乎没有加载 mbstring 库。

查看 phpinfo() 它输出以下内容: 配置文件 (php.ini) 路径 C:\Windows 加载的配置文件 C:\php\php.ini

我已经检查以确保 wondows 中不存在 php.ini 文件。

c:\php\php.ini 文件如下所示:

通过 phpinfo() 查看时,即使在 apache 重新启动后,我也看不到 mbstring 库已加载?

有什么建议吗?谢谢,

0 投票
1 回答
84 浏览

php - 麻烦w。phpmyadmin 安装

我已经完成了我应该 [我认为] 安装 phpmyadmin 的所有工作,但是当我尝试访问它时,我总是收到以下错误消息:“调用 C:\Apache\htdocs\phpMyAdmin\phpMyAdmin\libraries 中的未定义函数 mb_detect_encoding() \php-gettext\gettext.inc 在第 177 行"

有人可以帮我吗?