【问题标题】:Symfony2 JMS Serializer JSON_ constant errorSymfony2 JMS 序列化器 JSON_ 常量错误
【发布时间】:2013-12-03 15:31:40
【问题描述】:

PHP 致命错误:未捕获的异常 带有消息的“JMS\Serializer\Exception\InvalidArgumentException” '期望一个表示 JSON_ 常量之一的整数, 或常量本身的字符串。在 /var/www/mobilegolfplan.com/vendor/jms/serializer-bundle/JMS/SerializerBundle/DependencyInjection/Configuration.php:142\nStack 跟踪:\n#0 [内部函数]: JMS\SerializerBundle\DependencyInjection\{closure}(数组)\n#1 /var/www/mobilegolfplan.com/vendor/symfony/symfony/src/Symfony/Component/Config/Definition/Builder/ExprBuilder.php(229): call_user_func(对象(闭包), 数组)\n#2 /var/www/mobilegolfplan.com/vendor/symfony/symfony/src/Symfony/Component/Config/Definition/BaseNode.php(254): Symfony\Component\Config\Definition\Builder\{closure}(数组)\n#3 /var/www/mobilegolfplan.com/vendor/symfony/symfony/src/Symfony/Component/Config/Definition/ArrayNode.php(308): Symfony\Component\Config\Definition\BaseNode->normalize(Array)\n#4 /var/www/mobilegolfplan.com/vendor/symfony/symfony/src/Symfony/Component/Config/Definition/BaseNode 在 /var/www/mobilegolfplan.com/vendor/jms/serializer-bundle/JMS/SerializerBundle/DependencyInjection/Configuration.php 在第 142 行

我尝试在生产服务器中安装一个项目,但出现错误。已安装并启用 PHP json 扩展。如果我想尝试 composer install,我会一次又一次地看到那个错误。

我该如何解决这个问题?

【问题讨论】:

    标签: php json symfony jms serialization


    【解决方案1】:

    在配置文件的 JSON 常量中尝试像这样给出 0:

    jms_serializer:
        visitors:
            json:
                options: 0
    

    您可能没有使用正确版本的 PHP。您使用的是 PHP 5.3 还是更低版本?

    要使 Json 常量:JSON_UNESCAPED_SLASHESJSON_UNESCAPED_UNICODE 工作,您必须使用 PHP 5.4 或更高版本。

    在 PHP 5.4 或更高版本中,以下代码将起作用:

    jms_serializer:
        visitors:
            json:
                options:   [ JSON_UNESCAPED_SLASHES , JSON_UNESCAPED_UNICODE ]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多