缺少json扩展名。 请检查您的PHP配置

我从这个</ p>

  https://launchpad.net/~ondrej/+archive/php5-5.6a
</ code> </ pre>

然后我在尝试午餐时安装了phpmyadmin phpmyadmin我得到了这个 消息</ p>

 缺少json扩展名。 请检查您的PHP配置。
</ code> </ pre>

我的PHP模块:</ p>

  bcmath 
bz2
calendar
Core
ctype

date \ NDBA
dom
ereg
exif
fileinfo
filter
ftp \ NGD
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
</ code> </ pre >

[Zend Modules]
Zend OPcache </ p>

然后当我使用此命令安装 php-json </ code> </ p> \时 n

  sudo apt-get install php5-json 
</ code> </ pre>

我有这个</ p>

 以下软件包具有未满足的依赖项:
php5-json:取决于:phpapi-20121212
E:无法更正问题,您已经破坏了软件包。
</ code> </ pre>

如何 我能解决这个问题吗? </ p>
</ div>

展开原文

原文

I install PHP5.6.0 on Ubuntu 13.10 x64 from this

https://launchpad.net/~ondrej/+archive/php5-5.6a

then I installed phpmyadmin when I am trying to lunch phpmyadmin I got this message

The json extension is missing. Please check your PHP configuration.

my PHP modules:

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

then when i use this command to install php-json

sudo apt-get install php5-json

I got this

The following packages have unmet dependencies:
php5-json : Depends: phpapi-20121212
E: Unable to correct problems, you have held broken packages.

How can I fix this problem?

doudu2515
doudu2515 是的,我试过了
6 年多之前 回复
dscdttg4389
dscdttg4389 你之前尝试过sudoapt-getupdate吗?
6 年多之前 回复

4个回答



看起来你是从自定义仓库安装PHP5。 我将删除PHP并删除该repo。</ p>

  sudo apt-add-repository --remove ppa:ondrej / php5-5.6 
sudo apt-get update
</ code > </ pre>

现在安装php </ p>

  sudo apt-get install php5-common php5-json 
</ code> </ pre>

</ div>

展开原文

原文

It looks like you are install PHP5 from a custom repo. I would remove PHP and remove that repo.

sudo apt-add-repository --remove ppa:ondrej/php5-5.6
sudo apt-get update

now install php

sudo apt-get install php5-common php5-json

dsv38843
dsv38843 没运气!!!!!!!!
6 年多之前 回复



下面的解决方案适合我 - </ p>

  cd / etc / php5 / mods-  available 
vi json.ini
</ code> </ pre>

在此文件中进行以下更改</ p>

  priority = 20 
extension = json .so
</ code> </ pre>

如果没有json.ini文件,请创建包含内容为</ p>

 优先级的文件 = 20 
extension = json.so
</ code> </ pre>
</ div>

展开原文

原文

Below solution worked for me-

cd /etc/php5/mods-available
vi json.ini

In this file make below changes

priority=20
extension=json.so

Incase if json.ini file is not there, create the file with contents as

priority=20
extension=json.so

duanlaiyin2356
duanlaiyin2356 这样做之后我还需要两个步骤:1)运行“sudo php5enmod json”,然后2)重启apache。 有了这个,一切都很顺利。
4 年多之前 回复



我觉得这个问题是因为Ubuntu对php.ini文件的默认权限。 它只允许Root读取/执行保存in文件的目录。 </ p>

您可以通过在执行时观察它来轻松验证:
sudo php -m </ p>

您会看到所有已安装和已启用的模块都已正确列出。 </ p>

我在ubuntu发行版上找到的解决方案是:</ p>

  sudo chmod a + rx / etc / php5 / cli /

sudo chmod a + rx /etc/php5/cli/php.ini
sudo chmod a + rx /etc/php5/cli/conf.d/
</ pre>

然后您可以通过运行来轻松验证:</ p>

  php -m 
</ code> </ pre>
</ div>

展开原文

原文

The problem seems to me to be because of Ubuntu's default permissions for the php.ini files. It only allows Root to read/execute the directories holding the in files.

You can easily verify this by observing that when you execute: sudo php -m

You see all installed and enabled modules listed correctly.

The solution to this I have found on ubuntu distros is to:

sudo chmod a+rx /etc/php5/cli/
sudo chmod a+rx /etc/php5/cli/php.ini
sudo chmod a+rx /etc/php5/cli/conf.d/

Then you can easily verify by running:

php -m

ds753947
ds753947 我还要补充一点,上面的命令只是从命令行修复了PHP的用例。 Apache使用位于/ etc / php5 / apache2 /中的不同php.ini文件
4 年多之前 回复
dosgy00204
dosgy00204 请注意,我建议的chmod命令只添加了Read和Execute权限。 目录上需要执行权限以使用户能够查看目录列表。 我相信这些权限是安全的,但我对相反的信息持开放态度。
4 年多之前 回复



加载已安装的模块 json </ code>和 mcrypt </ code>后,它对我有用。 / p>

  $ sudo php5enmod json&amp;&amp;  sudo php5enmod mcrypt $ sudo service apache2 restart 
</ code> </ pre>

转到 http:// yourserver / phpmyadmin 并查看是否有效。</ p>
</ div>

展开原文

原文

It worked for me after loading the installed modules json and mcrypt.

$ sudo php5enmod json && sudo php5enmod mcrypt $ sudo service apache2 restart

Go to http://yourserver/phpmyadmin and take a look to check if it works.

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问