Salut, am o mica problema…
Interoghez un API … imi genereaza un json …
$mydata1='json sadadsad asd ada das das dasdasd asd asdas das d';
$mydata = file_get_contents("http://localhost/json.php");
$obj = json_decode($mydata,true);
foreach($obj['data'][0]['events'] as $data) {
}
Daca folosesc $mydata1 functioneaza perfect , daca folosec $mydata nu functioneaza de ce ?
NULL
**Notice** : Trying to access array offset on value of type null in **/Applications/AMPPS/www/verify.php** on line **8**
**Notice** : Trying to access array offset on value of type null in **/Applications/AMPPS/www/verify.php** on line **8**
**Notice** : Trying to access array offset on value of type null in **/Applications/AMPPS/www/verify.php** on line **8**
**Warning** : Invalid argument supplied for foreach() in **/Applications/AMPPS/www/verify.php** on line **8**
Păi hai să o gândim așa… băbește, că judecând după discuțiile deschise de tine, aici ai probleme de fapt.
Trying to access array offset on value of type null in
Ce înseamnă asta? Că rezultatul de la json_decode este null. Când rezultatul este null? Uite ce zice la manual:
null is returned if the json cannot be decoded or if the encoded data is deeper than the nesting limit.
Deci ceva se întâmplă la decodare. Poate JSON-nul nu e valid? Căutăm un linter online, JSON-ul e bun.
Înseamnă că problema e la codul nostru. La json_decode am stabilit că nu are cum să fie, deci cel mai probabil buba este ceva mai sus. Folosim json_last_error_msg, să vedem ce eroare dă.
Nu dă eroare? Repeți procesul ăsta la linia de mai sus: vezi ce returnează, cauți în manual, cauți în logs etc.
Din ce mi-am dat seama pana acum este ca atunci când fac copy paste funcționează pentru ca diacriticile sunt înlocuite automat de browser in ă î etc ! Când fac direct File get in Echo mi le arată ca #a52733 exemplu aici bănuiesc ca e buba …
Am tot căutat rezolvare și nimic …