Call to undefined function Tester\json_decode()

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Michal Vyšinský
Člen | 608
+
0
-

Ahoj,
naprosto chápu, co znamená tato hláška. Ale nechápu, proč se vůbec zobrazuje. Když spustím jednoduchý skript kde volám json_encode/decode() přes cli, tak bez problému funguje.

Nette Tester mi ale odmítá testy spustit. Když přidám do testovacího php.ini extension=json.so tak mi to vypíše chybu Module 'json' already loaded. Když jej tam nedám, tak to nenajde funkce json_encode/decode. Nevíte někdo prosím co s tím?

php -v
PHP 5.5.3-1ubuntu2.3 (cli)

php-cgi -v vypisuje to samé

Jan Tvrdík
Nette guru | 2595
+
0
-

Zkus zavolat tester s přepínačem –info.

Michal Vyšinský
Člen | 608
+
0
-

Díky za reakci. Zde je výstup:

 _____ ___  ___ _____ ___  ___
|_   _/ __)( __/_   _/ __)| _ )
  |_| \___ /___) |_| \___ |_|_\  v1.1.0

PHP binary
----------
/usr/bin/php5-cgi


PHP version
-----------
5.5.3-1ubuntu2.3 (cgi-fcgi)


Loaded php.ini files
--------------------
/home/michal/www/events/tests/php.ini-unix


Loaded extensions
-----------------
bcmath, bz2, calendar, cgi-fcgi, Core, ctype, date, dba, dom, ereg, exif, fileinfo, filter, ftp, gettext, hash, iconv, libxml, mbstring, mhash, openssl, pcntl, pcre, Phar, posix, Reflection, session, shmop, SimpleXML, soap, sockets, SPL, standard, sysvmsg, sysvsem, sysvshm, tokenizer, wddx, xml, xmlreader, xmlwriter, zip, zlib

Takže json tam očividně není. Nicméně opět jsem zkusil přidat do php.ini-unix řádek extension=json.so a přišel jsem na zajímavý úkaz: Když tester spustím přímo ze složky tests (./run-tests.sh) tak vše funguje (tedy, když v php.ini-unix mám explicitně uvedeno rozšíření). Když chci testy spustit o adresář výše, tedy tests/run-tests.sh tak mi to buď píše, že json je už zaregistrovaný, nebo, že to nemůže najít funkci json_encode/decode (v závislosti na souboru php.ini-unix).

Takže asi vyřešeno. Budu testy spouštět přímo ze složky s testy a v php.ini-unix nechám ten řádek. Díky


Edit: ono už nejde měnit titulek threadu?

Editoval Michal Vyšinský (8. 5. 2014 9:57)