我在Ubuntu 13.10 x64上安装PHP5.6.0
https://launchpad.net/~ondrej/+archive/php5-5.6a
然后我在phpmyadmin尝试午餐时安装了phpmyadmin我收到了这条消息
The json extension is missing. Please check your PHP configuration.
我的PHP模块:
bcmath
bz2
calendar
Core
ctype
date
dba
dom
ereg
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
libxml
mbstring
mcrypt
mhash
mysql
mysqli
openssl
pcntl
pcre
PDO
pdo_mysql
Phar
posix
readline
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xml
xmlreader
xmlwriter
Zend OPcache
zip
zlib
[Zend Modules] Zend OPcache
然后,当我使用此命令安装 php-json
sudo apt-get install php5-json
我懂了
The following packages have unmet dependencies:
php5-json : Depends: phpapi-20121212
E: Unable to correct problems, you have held broken packages.
我该如何解决这个问题?
4 回答
加载已安装的模块
json
和mcrypt
后,它对我有用 .转到http://yourserver/phpmyadmin并查看是否有效 .
以下解决方案对我有用 -
在此文件中进行以下更改
如果没有json.ini文件,请创建包含内容的文件
看起来你是从自定义仓库安装PHP5 . 我会删除PHP并删除该repo .
现在安装php
在我看来这个问题是因为Ubuntu对php.ini文件的默认权限 . 它只允许Root读取/执行保存in文件的目录 .
您可以通过在执行时观察它来轻松验证:sudo php -m
您会看到正确列出所有已安装和已启用的模块
我在ubuntu发行版上找到的解决方案是:
然后您可以通过运行轻松验证: