2016-04-26 17 views
2

感謝您首先查看我的問題!我已經嘗試過類似的帖子PHP Fatal error: Call to undefined function json_decode()並搜索了很多,但我仍然無法解決我的問題。PHP致命錯誤:調用未定義的函數json_decode()只在日食

目前,問題只發生在Ecplise。 php在終端中使用json_decode()。

以下是詳細信息:

當我試圖在Eclipse中運行代碼,

<?php 
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); 
echo json_encode($arr); 
?> 

我得到了錯誤: 「PHP致命錯誤:調用未定義的函數json_encode()」 。

但是,當我在終端中運行代碼文件,它完美的工作。所以我想這可能是由Eclipse中的PHP解釋器引起的。然後我發現我有兩個USR /斌/ PHP和用戶/斌/ PHP5,我都嘗試,但他們都不是工作在Eclipse: enter image description here

我的操作系統:Ubuntu 14.04 Eclipse版本:版本:火星0.2版本(4.5.2)

whereis PHP:

php: /usr/bin/php /usr/bin/X11/php /usr/share/php /usr/share/man/man1/php.1.gz 

PHP --version:

PHP 5.5.9-1ubuntu4.16 (cli) (built: Apr 20 2016 14:31:27) 
Copyright (c) 1997-2014 The PHP Group 
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies 
    with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies 

嘗試安裝PHP 5 JSON: sudo易於得到在Ecplise安裝PHP5-JSON

Reading package lists... Done 
Building dependency tree  
Reading state information... Done 
php5-json is already the newest version. 
The following packages were automatically installed and are no longer required: 
    libjna-java libntdb1 libopts25 ntp python-ntdb python-support 
Use 'apt-get autoremove' to remove them. 
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded. 

冉phpinfo()函數:

phpinfo() 
PHP Version => 5.5.9-1ubuntu4.16 

System => Linux Fighting 4.2.0-35-generiC#40~14.04.1-Ubuntu SMP Fri Mar 18 16:37:35 UTC 2016 x86_64 
Build Date => Apr 20 2016 14:28:36 
Server API => Command Line Interface 
Virtual Directory Support => disabled 
Configuration File (php.ini) Path => /etc/php5/cli 
Loaded Configuration File => /tmp/php-ini/session3358273589804064308.tmp/php.ini 
Scan this dir for additional .ini files => (none) 
Additional .ini files parsed => (none) 
PHP API => 20121113 
PHP Extension => 20121212 
Zend Extension => 220121212 
Zend Extension Build => API220121212,NTS 
PHP Extension Build => API20121212,NTS 
Debug Build => no 
Thread Safety => disabled 
Zend Signal Handling => disabled 
Zend Memory Manager => enabled 
Zend Multibyte Support => provided by mbstring 
IPv6 Support => enabled 
DTrace Support => enabled 

Registered PHP Streams => https, ftps, compress.zlib, compress.bzip2, php, file, glob, data, http, ftp, phar, zip 
Registered Stream Socket Transports => tcp, udp, unix, udg, ssl, sslv3, tls 
Registered Stream Filters => zlib.*, bzip2.*, convert.iconv.*, string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, dechunk 

This program makes use of the Zend Scripting Language Engine: 
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies 


_______________________________________________________________________ 


Configuration 

bcmath 

BCMath support => enabled 

Directive => Local Value => Master Value 
bcmath.scale => 0 => 0 

bz2 

BZip2 Support => Enabled 
Stream Wrapper support => compress.bzip2:// 
Stream Filter support => bzip2.decompress, bzip2.compress 
BZip2 Version => 1.0.6, 6-Sept-2010 

calendar 

Calendar support => enabled 

Core 

PHP Version => 5.5.9-1ubuntu4.16 

Directive => Local Value => Master Value 
allow_url_fopen => On => On 
allow_url_include => Off => Off 
always_populate_raw_post_data => Off => Off 
arg_separator.input => & => & 
arg_separator.output => & => & 
asp_tags => Off => Off 
auto_append_file => no value => no value 
auto_globals_jit => On => On 
auto_prepend_file => no value => no value 
browscap => no value => no value 
default_charset => no value => no value 
default_mimetype => text/html => text/html 
disable_classes => no value => no value 
disable_functions => no value => no value 
display_errors => Off => Off 
display_startup_errors => Off => Off 
doc_root => no value => no value 
docref_ext => no value => no value 
docref_root => no value => no value 
enable_dl => Off => Off 
enable_post_data_reading => On => On 
error_append_string => no value => no value 
error_log => no value => no value 
error_prepend_string => no value => no value 
error_reporting => 22527 => 22527 
exit_on_timeout => Off => Off 
expose_php => On => On 
extension_dir => /usr/lib/php5/20121212 => /usr/lib/php5/20121212 
file_uploads => On => On 
highlight.comment => <font style="color: #FF8000">#FF8000</font> => <font style="color: #FF8000">#FF8000</font> 
highlight.default => <font style="color: #0000BB">#0000BB</font> => <font style="color: #0000BB">#0000BB</font> 
highlight.html => <font style="color: #000000">#000000</font> => <font style="color: #000000">#000000</font> 
highlight.keyword => <font style="color: #007700">#007700</font> => <font style="color: #007700">#007700</font> 
highlight.string => <font style="color: #DD0000">#DD0000</font> => <font style="color: #DD0000">#DD0000</font> 
html_errors => Off => Off 
ignore_repeated_errors => Off => Off 
ignore_repeated_source => Off => Off 
ignore_user_abort => Off => Off 
implicit_flush => On => On 
include_path => .:/home/spider/workspace/AWS => .:/home/spider/workspace/AWS 
log_errors => On => On 
log_errors_max_len => 1024 => 1024 
mail.add_x_header => On => On 
mail.force_extra_parameters => no value => no value 
mail.log => no value => no value 
max_execution_time => 0 => 0 
max_file_uploads => 20 => 20 
max_input_nesting_level => 64 => 64 
max_input_time => -1 => -1 
max_input_vars => 1000 => 1000 
memory_limit => -1 => -1 
open_basedir => no value => no value 
output_buffering => 0 => 0 
output_handler => no value => no value 
post_max_size => 8M => 8M 
precision => 14 => 14 
realpath_cache_size => 16K => 16K 
realpath_cache_ttl => 120 => 120 
register_argc_argv => On => On 
report_memleaks => On => On 
report_zend_debug => Off => Off 
request_order => GP => GP 
sendmail_from => no value => no value 
sendmail_path => /usr/sbin/sendmail -t -i => /usr/sbin/sendmail -t -i 
serialize_precision => 17 => 17 
short_open_tag => On => On 
SMTP => localhost => localhost 
smtp_port => 25 => 25 
sql.safe_mode => Off => Off 
sys_temp_dir => no value => no value 
track_errors => Off => Off 
unserialize_callback_func => no value => no value 
upload_max_filesize => 2M => 2M 
upload_tmp_dir => no value => no value 
user_dir => no value => no value 
user_ini.cache_ttl => 300 => 300 
user_ini.filename => .user.ini => .user.ini 
variables_order => GPCS => GPCS 
xmlrpc_error_number => 0 => 0 
xmlrpc_errors => Off => Off 
zend.detect_unicode => On => On 
zend.enable_gc => On => On 
zend.multibyte => Off => Off 
zend.script_encoding => no value => no value 

ctype 

ctype functions => enabled 

date 

date/time support => enabled 
"Olson" Timezone Database Version => 0.system 
Timezone Database => internal 
Default timezone => Europe/Stockholm 

Directive => Local Value => Master Value 
date.default_latitude => 31.7667 => 31.7667 
date.default_longitude => 35.2333 => 35.2333 
date.sunrise_zenith => 90.583333 => 90.583333 
date.sunset_zenith => 90.583333 => 90.583333 
date.timezone => Europe/Stockholm => Europe/Stockholm 

dba 

DBA support => enabled 
Supported handlers => cdb cdb_make db4 inifile flatfile 

Directive => Local Value => Master Value 
dba.default_handler => flatfile => flatfile 

dom 

DOM/XML => enabled 
DOM/XML API Version => 20031129 
libxml Version => 2.9.1 
HTML Support => enabled 
XPath Support => enabled 
XPointer Support => enabled 
Schema Support => enabled 
RelaxNG Support => enabled 

ereg 

Regex Library => Bundled library enabled 

exif 

EXIF Support => enabled 
EXIF Version => 1.4 $Id$ 
Supported EXIF Version => 0220 
Supported filetypes => JPEG,TIFF 

Directive => Local Value => Master Value 
exif.decode_jis_intel => JIS => JIS 
exif.decode_jis_motorola => JIS => JIS 
exif.decode_unicode_intel => UCS-2LE => UCS-2LE 
exif.decode_unicode_motorola => UCS-2BE => UCS-2BE 
exif.encode_jis => no value => no value 
exif.encode_unicode => ISO-8859-15 => ISO-8859-15 

fileinfo 

fileinfo support => enabled 
version => 1.0.5-dev 

filter 

Input Validation and Filtering => enabled 
Revision => $Id: 4d3899e089e6e45b157975ceef2ac7deb6e9d762 $ 

Directive => Local Value => Master Value 
filter.default => unsafe_raw => unsafe_raw 
filter.default_flags => no value => no value 

ftp 

FTP support => enabled 

gettext 

GetText Support => enabled 

hash 

hash support => enabled 
Hashing Engines => md2 md4 md5 sha1 sha224 sha256 sha384 sha512 ripemd128 ripemd160 ripemd256 ripemd320 whirlpool tiger128,3 tiger160,3 tiger192,3 tiger128,4 tiger160,4 tiger192,4 snefru snefru256 gost adler32 crc32 crc32b fnv132 fnv164 joaat haval128,3 haval160,3 haval192,3 haval224,3 haval256,3 haval128,4 haval160,4 haval192,4 haval224,4 haval256,4 haval128,5 haval160,5 haval192,5 haval224,5 haval256,5 

iconv 

iconv support => enabled 
iconv implementation => glibc 
iconv library version => 2.19 

Directive => Local Value => Master Value 
iconv.input_encoding => ISO-8859-1 => ISO-8859-1 
iconv.internal_encoding => ISO-8859-1 => ISO-8859-1 
iconv.output_encoding => ISO-8859-1 => ISO-8859-1 

libxml 

libXML support => active 
libXML Compiled Version => 2.9.1 
libXML Loaded Version => 20901 
libXML streams => enabled 

mbstring 

Multibyte Support => enabled 
Multibyte string engine => libmbfl 
HTTP input encoding translation => disabled 
libmbfl version => 1.3.2 

mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1. 

Multibyte (japanese) regex support => enabled 
Multibyte regex (oniguruma) backtrack check => On 
Multibyte regex (oniguruma) version => 5.9.2 

Directive => Local Value => Master Value 
mbstring.detect_order => no value => no value 
mbstring.encoding_translation => Off => Off 
mbstring.func_overload => 0 => 0 
mbstring.http_input => pass => pass 
mbstring.http_output => pass => pass 
mbstring.http_output_conv_mimetypes => ^(text/|application/xhtml\+xml) => ^(text/|application/xhtml\+xml) 
mbstring.internal_encoding => no value => no value 
mbstring.language => neutral => neutral 
mbstring.strict_detection => Off => Off 
mbstring.substitute_character => no value => no value 

mhash 

MHASH support => Enabled 
MHASH API Version => Emulated Support 

openssl 

OpenSSL support => enabled 
OpenSSL Library Version => OpenSSL 1.0.1f 6 Jan 2014 
OpenSSL Header Version => OpenSSL 1.0.1f 6 Jan 2014 

pcntl 

pcntl support => enabled 

pcre 

PCRE (Perl Compatible Regular Expressions) Support => enabled 
PCRE Library Version => 8.31 2012-07-06 

Directive => Local Value => Master Value 
pcre.backtrack_limit => 1000000 => 1000000 
pcre.recursion_limit => 100000 => 100000 

Phar 

Phar: PHP Archive support => enabled 
Phar EXT version => 2.0.2 
Phar API version => 1.1.1 
SVN revision => $Id: a5488937a80433d434af6753d3db8517feaf91df $ 
Phar-based phar archives => enabled 
Tar-based phar archives => enabled 
ZIP-based phar archives => enabled 
gzip compression => enabled 
bzip2 compression => enabled 
OpenSSL support => enabled 


Phar based on pear/PHP_Archive, original concept by Davey Shafik. 
Phar fully realized by Gregory Beaver and Marcus Boerger. 
Portions of tar implementation Copyright (c) 2003-2009 Tim Kientzle. 
Directive => Local Value => Master Value 
phar.cache_list => no value => no value 
phar.readonly => On => On 
phar.require_hash => On => On 

posix 

Revision => $Id: 1dfa9997ed76804e53c91e0ce862f3707617b6ed $ 

Reflection 

Reflection => enabled 
Version => $Id: 31d836a7ac92a37b5c580836d91ad4736fe2f376 $ 

session 

Session Support => enabled 
Registered save handlers => files user 
Registered serializer handlers => php_serialize php php_binary wddx 

Directive => Local Value => Master Value 
session.auto_start => Off => Off 
session.cache_expire => 180 => 180 
session.cache_limiter => nocache => nocache 
session.cookie_domain => no value => no value 
session.cookie_httponly => Off => Off 
session.cookie_lifetime => 0 => 0 
session.cookie_path =>/=>/
session.cookie_secure => Off => Off 
session.entropy_file => /dev/urandom => /dev/urandom 
session.entropy_length => 32 => 32 
session.gc_divisor => 1000 => 1000 
session.gc_maxlifetime => 1440 => 1440 
session.gc_probability => 0 => 0 
session.hash_bits_per_character => 5 => 5 
session.hash_function => 0 => 0 
session.name => PHPSESSID => PHPSESSID 
session.referer_check => no value => no value 
session.save_handler => files => files 
session.save_path => /var/lib/php5 => /var/lib/php5 
session.serialize_handler => php => php 
session.upload_progress.cleanup => On => On 
session.upload_progress.enabled => On => On 
session.upload_progress.freq => 1% => 1% 
session.upload_progress.min_freq => 1 => 1 
session.upload_progress.name => PHP_SESSION_UPLOAD_PROGRESS => PHP_SESSION_UPLOAD_PROGRESS 
session.upload_progress.prefix => upload_progress_ => upload_progress_ 
session.use_cookies => On => On 
session.use_only_cookies => On => On 
session.use_strict_mode => Off => Off 
session.use_trans_sid => 0 => 0 

shmop 

shmop support => enabled 

SimpleXML 

Simplexml support => enabled 
Revision => $Id: 363ea1fc44b0b7775e2ec3ce8456530fec6d1660 $ 
Schema support => enabled 

soap 

Soap Client => enabled 
Soap Server => enabled 

Directive => Local Value => Master Value 
soap.wsdl_cache => 1 => 1 
soap.wsdl_cache_dir => /tmp => /tmp 
soap.wsdl_cache_enabled => 1 => 1 
soap.wsdl_cache_limit => 5 => 5 
soap.wsdl_cache_ttl => 86400 => 86400 

sockets 

Sockets Support => enabled 

SPL 

SPL support => enabled 
Interfaces => Countable, OuterIterator, RecursiveIterator, SeekableIterator, SplObserver, SplSubject 
Classes => AppendIterator, ArrayIterator, ArrayObject, BadFunctionCallException, BadMethodCallException, CachingIterator, CallbackFilterIterator, DirectoryIterator, DomainException, EmptyIterator, FilesystemIterator, FilterIterator, GlobIterator, InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException, LimitIterator, LogicException, MultipleIterator, NoRewindIterator, OutOfBoundsException, OutOfRangeException, OverflowException, ParentIterator, RangeException, RecursiveArrayIterator, RecursiveCachingIterator, RecursiveCallbackFilterIterator, RecursiveDirectoryIterator, RecursiveFilterIterator, RecursiveIteratorIterator, RecursiveRegexIterator, RecursiveTreeIterator, RegexIterator, RuntimeException, SplDoublyLinkedList, SplFileInfo, SplFileObject, SplFixedArray, SplHeap, SplMinHeap, SplMaxHeap, SplObjectStorage, SplPriorityQueue, SplQueue, SplStack, SplTempFileObject, UnderflowException, UnexpectedValueException 

standard 

Dynamic Library Support => enabled 
Path to sendmail => /usr/sbin/sendmail -t -i 

Directive => Local Value => Master Value 
assert.active => 1 => 1 
assert.bail => 0 => 0 
assert.callback => no value => no value 
assert.quiet_eval => 0 => 0 
assert.warning => 1 => 1 
auto_detect_line_endings => 0 => 0 
default_socket_timeout => 60 => 60 
from => no value => no value 
url_rewriter.tags => a=href,area=href,frame=src,input=src,form=fakeentry => a=href,area=href,frame=src,input=src,form=fakeentry 
user_agent => no value => no value 

sysvmsg 

sysvmsg support => enabled 
Revision => $Id: adf1d2d6be849c46eed3c3ee6f1cbebd1448d6e5 $ 

tokenizer 

Tokenizer Support => enabled 

wddx 

WDDX Support => enabled 
WDDX Session Serializer => enabled 

xml 

XML Support => active 
XML Namespace Support => active 
libxml2 Version => 2.9.1 

xmlreader 

XMLReader => enabled 

xmlwriter 

XMLWriter => enabled 

zip 

Zip => enabled 
Extension Version => $Id: 05dd1ecc211075107543b0ef8cee488dd229fccf $ 
Zip version => 1.11.0 
Libzip version => 0.10.1 

zlib 

ZLib Support => enabled 
Stream Wrapper => compress.zlib:// 
Stream Filter => zlib.inflate, zlib.deflate 
Compiled Version => 1.2.8 
Linked Version => 1.2.8 

Directive => Local Value => Master Value 
zlib.output_compression => Off => Off 
zlib.output_compression_level => -1 => -1 
zlib.output_handler => no value => no value 

Additional Modules 

Module Name 
sysvsem 
sysvshm 

Environment 

Variable => Value 
LD_LIBRARY_PATH => /usr/lib 

PHP Variables 

Variable => Value 
_SERVER["LD_LIBRARY_PATH"] => /usr/lib 
_SERVER["PHP_SELF"] => /home/spider/workspace/AWS/t.php 
_SERVER["SCRIPT_NAME"] => /home/spider/workspace/AWS/t.php 
_SERVER["SCRIPT_FILENAME"] => /home/spider/workspace/AWS/t.php 
_SERVER["PATH_TRANSLATED"] => /home/spider/workspace/AWS/t.php 
_SERVER["DOCUMENT_ROOT"] => 
_SERVER["REQUEST_TIME_FLOAT"] => 1461663272.596 
_SERVER["REQUEST_TIME"] => 1461663272 
_SERVER["argv"] => Array 
(
    [0] => /home/spider/workspace/AWS/t.php 
) 

_SERVER["argc"] => 1 

PHP License 
This program is free software; you can redistribute it and/or modify 
it under the terms of the PHP License as published by the PHP Group 
and included in the distribution in the file: LICENSE 

This program is distributed in the hope that it will be useful, 
but WITHOUT ANY WARRANTY; without even the implied warranty of 
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 

If you did not receive a copy of the PHP license, or have any 
questions about PHP licensing, please contact [email protected] 

期待您的回覆,感謝您的時間這麼多!

真誠

回答

1

最後,我發現問題是我以某種方式安裝了兩個PHP。因此,在我通過「sudo apt-get remove php5-json」卸載其中一個並在Eclipse中找到另一個可執行PHP文件後,問題就解決了!

總之,我認爲解決這類問題的最好方法是重新安裝它!感謝Marcin Orlowski的幫助。祝你好運,夥計!

1

你需要檢查由PHP加載配置文件,因爲事實擴展龍頭安裝並不自動意味着它不能被禁用。所以檢查:

Loaded Configuration File => /etc/php5/cli/php.ini 
Scan this dir for additional .ini files => /etc/php5/cli/conf.d 
Additional .ini files parsed => /etc/php5/cli/conf.d/05-opcache.ini, 
/etc/php5/cli/conf.d/10-pdo.ini, 
/etc/php5/cli/conf.d/20-json.ini, 
/etc/php5/cli/conf.d/20-readline.ini 

尤其是這一個:

/etc/php5/cli/conf.d/20-json.ini 

,並取消對zend_extension=...線的情況下,它已被註釋掉(或不存在)

編輯

我只是意識到您作爲php狀態信息包含在您的問題中可能不是來自您的Eclipse使用的同一個PHP G。爲了確保我們不是在看不同的東西,通過Eclipse

<?php 
phpinfo(); 

運行此腳本,看看你有什麼JSON相關的存在(如果有上市JSON擴展)。另請檢查列出的是什麼php.ini

+0

感謝您的快速回復!但我找不到「json」和「zend_extension」。在php.ini中。和/etc/php5/cli/conf.d/05-opcache.ini:「; php的ZendOpcache模塊配置 ; priority = 05 zend_extension = opcache.so」; 10-pdo.ini:「; php PDO模塊配置 ; priority = 10 extension = pdo.so」; 20-readline.ini:「; php readline模塊的配置 ; priority = 20 extension = readline.so」; 20-json.ini:「;配置爲php json模塊 ; priority = 20 extension = json.so」。 – Spider

+0

現在大多數擴展配置都在'conf.d'中,因此您需要檢查'/ etc/php5/cli/conf.d/20-json.ini'文件,因爲這似乎與json擴展相關。 –

+0

是的。 「;配置php json模塊 ; priority = 20 extension = json.so」是20-json.ini文件中唯一的內容。期待您的回覆,並萬分感謝! – Spider

相關問題