【问题标题】:Symfony 4.1 PHP 7.2.10 Notice: iconv(): Wrong charset, conversion from `UTF-8' to `UTF-16BE' is not allowedSymfony 4.1 PHP 7.2.10 注意:iconv():错误的字符集,不允许从 `UTF-8' 转换为 `UTF-16BE'
【发布时间】:2019-05-05 06:25:45
【问题描述】:

好的,所以我搜索了其他问题但没有成功。 我在一个虚拟盒子上遇到了这个错误,我无法以任何方式改变它。

MBString 已启用 IconV 已启用

在渲染模板期间引发了异常(“注意:iconv(): 字符集错误,不允许从 UTF-8' toUTF-16BE 转换”)。

Twig_Error_Runtime
in vendor/symfony/web-profiler- 
bundle/Resources/views/Profiler/base_js.html.twig (line 331)
in vendor/twig/twig/lib/Twig/Template.php->displayWithErrorHandling (line 367)
in vendor/twig/twig/lib/Twig/Template.php->display (line 375)
in vendor/twig/twig/lib/Twig/Extension/Core.php->render (line 1326)
...

'./configure''--prefix=/****/srv/php/7.2.10''--with-config-file-path=/****/srv/php/7.2. 10/etc' '--with-config-file-scan-dir=/****/srv/php/7.2.10/etc/php.d' '--with-mysql=mysqlnd' '--with -mysqli=mysqlnd' '--with-pdo-mysql=mysqlnd' '--with-fpm-systemd' '--enable-opcache' '--disable-rpath' '--disable-short-tags' '- -disable-ipv6' '--disable-debug' '--with-gd' '--with-jpeg-dir' '--with-png-dir' '--with-mcrypt' '--with-mhash ' '--with-curl' '--with-xsl' '--enable-intl' '--enable-bcmath' '--with-openssl' '--enable-mbstring' '--enable-mbregex' '--enable-soap' '--with-bz2' '--enable-zip' '--with-zlib' '--enable-static' '--enable-inline-optimization' '--enable-fpm ' '--disable-cli' '--disable-phar' 'CFLAGS=-msse2 -mfpmath=sse -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-保护器-强 --param=ssp-buffer-size=4 -grecord-gcc-switches -fPIC -pie -Wl,-z,relro -Wl,-z,now' 'CXXFLAGS=-msse2 -mfpmath=sse -O2 -g -pipe -Wall -Werror=格式-安全 -Wp,-D_FO RTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -fPIC -pie -Wl,-z,relro -Wl,-z,now'

下面的图片显示了 php_info 关于 mbstring 和 iconv 的部分:

任何帮助将不胜感激。

我在 composer.json 中也有这个,但 nada 没有

"replace": {
    "symfony/polyfill-ctype": "^1.10",
    "symfony/polyfill-iconv": "^1.10",
    "symfony/polyfill-php71": "^1.10",
    "symfony/polyfill-php70": "^1.10",
    "symfony/polyfill-php56": "^1.10"
},

【问题讨论】:

  • 我会说bundle/Resources/views/Profiler/base_js.html.twig 不是正确的 utf-8 编码文件。
  • 我也这么认为,但它直接来自 symfony repo。新鲜的 git pull。
  • 它可以在本地使用相同的文件和相同的 php 设置
  • “它适用于本地”是什么意思?您的开发/生产环境有何不同?
  • Nm 本地机器,确实略有不同。在 Vm 上,我用 php7.1 运行 symfony 3.4 没有问题,但最近迁移到 4.2 时,这个问题就被打破了。我没有时间处理这个问题,所以我关闭了网络分析器工具栏(网站现在可以工作了..我稍后会检查分析器中可能有损坏的文件)

标签: php symfony utf-8 iconv mbstring


【解决方案1】:

在 Mac 上使用 phpbrew 从 PHP 7.1 本地更新到 7.3 后,我遇到了完全相同的问题。花了几个小时调试......无论如何,修复相当简单:在使用 phpbrew 切换 PHP 版本后重新启动你的 PHP-FPM!

所以无论何时:

phpbrew use (some-php-version)

之后总是重启:

phpbrew fpm restart

我猜其他任何操作系统都遵循同样的原则。

【讨论】:

    【解决方案2】:

    php 可能已被 chroot,但此 chroot 中的某些文件夹丢失。

    【讨论】:

      猜你喜欢
      • 2014-08-25
      • 2012-07-19
      • 1970-01-01
      • 1970-01-01
      • 2021-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多