如何在 PHP 中解决“调用未定义函数 Composer\Json\json_decode()”?

Posted

技术标签:

【中文标题】如何在 PHP 中解决“调用未定义函数 Composer\\Json\\json_decode()”?【英文标题】: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()

我现在不知道该怎么办。

【问题讨论】:

【参考方案1】:

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

apt-get install php5-json

【讨论】:

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

PHP 扩展从两个文件加载

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

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

【讨论】:

以上是关于如何在 PHP 中解决“调用未定义函数 Composer\Json\json_decode()”?的主要内容,如果未能解决你的问题,请参考以下文章

php中上传多张图片,如何解决?

PHP - 如何解决中文乱码

php中防止SQL注入,该如何解决?

如何解决在Drupal 6.13中使用PHP 5.3.0的弃用函数ereg()

如何解决PHP中文乱码问题

如何解决使用php发送邮件的错误