Apache is logging
PHP Fatal error: Call to undefined function json_decode(). After some googling, it seems this problem is a result of not having the latest version of php. Oddly, running
php --version ouputs
PHP 5.5.1-2+debphp.org~precise+2 (cli) (built: Aug 6 2013 10:49:43) Copyright (c) 1997-2013 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies with Zend OPcache v7.0.2-dev, Copyright (c) 1999-2013, by Zend Technologies with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans
Clearly showing that my
php version is greater than
Any ideas as to what could cause this, or the steps to take to find out?
EDIT: The result of a script echoing phpversion is
EDIT: The result of
phpinfo() is also
PHP Version 5.5.1-2+debphp.org~precise+2
Furthermore, in the
phpinfo(), it lists the module JSON and the module authors (Omar Kilani, Scott MacVicar).
This question is tagged with
~ Asked on 2013-08-14 18:24:22
sudo apt-get install php7.2-json
php5-json depending on the PHP version you're running)
Then of course make sure you restart Apache:
sudo service apache2 restart
Or if you are using PHP-FPM:
sudo service php7.2-fpm restart
Debian has removed the previous JSON extension as of PHP 5.5rc2 due to a license conflict.
The JSON license has a clause which states:
The Software shall be used for Good, not Evil.
This causes a problem with Free Software Foundation's definition of free software which states:
The freedom to run the program, for any purpose (freedom 0).
FSF goes on to specifically list the JSON license as nonfree.
Yes it seems a bit silly. Nevertheless Debian has removed the non-compliant JSON extension, and instead offered a replacement extension that is functionally equivalent.
To be clear: PHP itself has NOT removed JSON, it's still in master. This is a distro / package manager issue.
We have not removed json and we will never release a version of php without json support built in. Any changes in 5.5 is due to whatever distro packaging you are using which we have no control over.
~ Answered on 2013-08-14 18:38:14
With Ubuntu :
sudo apt-get install php5-json sudo service php5-fpm restart
~ Answered on 2014-01-11 21:54:31