【问题标题】:How to resolve "Call to undefined function Composer\Json\json_decode()" in PHP?如何在 PHP 中解决“调用未定义函数 Composer\Json\json_decode()”?
【发布时间】:2014-06-23 04:37:06
【问题描述】:

我在 Linux Mint 系统中。我已经安装了作曲家。我正在尝试在我的 www 文件夹中安装 Laravel 4。我最初使用了这个命令composer create-project laravel/laravel l4 --prefer-dist,他们说我必须安装mcrypt。我去了 PHP 站点,他们说我需要使用这些命令安装 mcrypt。

apt-get install php5-mcrypt
mv -i /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available/
php5enmod mcrypt
service apache2 restart

我已经完成了。现在,当我尝试安装 Laravel 4 时,他们说

致命错误:在 phar:///usr/local/bin/composer/src/Composer/Json/JsonFile.php 第 217 行调用未定义函数 Composer\Json\json_decode()

我现在不知道该怎么办。

【问题讨论】:

    标签: php json laravel laravel-4 composer-php


    【解决方案1】:

    PHP 的 JSON 模块丢失,试试这个:

    apt-get install php5-json
    

    【讨论】:

    • @LeifNeland 有完全相同的错误吗?如果没有,您能否提供有关您的问题的更多信息?
    • 出于某种我目前无法理解的原因,composer 是“php -n composer.phar”的别名。删除 -n 允许安装继续。
    【解决方案2】:

    PHP 扩展从两个文件加载

    1. /etc/php5/apache2/php.ini,供 Apache 使用。启用的模块可以通过使用 phpinfo(); 创建一个 php 文件来验证。检查 json 是否存在于列表中。如果没有,使用“sudo apt-get install php5-json”命令安装json,然后重启apache。

    2. /etc/php5/cli/php.ini 在从命令行运行时由 PHP 使用。启用的模块可以通过不带引号的“php -m”命令进行验证。在我的情况下,该列表中不存在 json。通过在 php.ini 文件中添加“extension=json.so”来启用 php.ini 文件中的 json 模块解决了这个问题。

    【讨论】:

      猜你喜欢
      • 2017-03-11
      • 2017-03-19
      • 2011-03-01
      • 2016-08-19
      • 2017-12-16
      • 2021-09-26
      • 1970-01-01
      • 2014-04-16
      • 2021-11-19
      相关资源
      最近更新 更多