Używam json_encode() do kodowania tablicy w formacie json. ale zwraca obiekt zamiast tablicy. Chcę zwrócić tablicę, a nie obiekt. jakieś ciało ma jakiś pomysł?PHP json_encode zwraca wiersze jako obiekty zamiast tablic
Odpowiedz
Należy użyć json_decode
z TRUE
param jak w poniższym przykładzie:
$array = array(1,2,3);
$encode = json_encode($array);
$decode = json_decode($encode, TRUE);
Teraz $decode
jest array
, nie obiekt.
Proszę o json_encode nie dla json_decode. kiedy używamy danych JSON z javascript. –
faktycznie json_encode funkcja w php zwróci json sformatowany ciąg.
i jeśli chcesz analizować json sformatowany ciąg z powrotem w php należy użyć json_decode.
Funkcja json_decode zwróci dane dwa typy. obiekt & tablica associtavie.
json_decode(); zwracany obiekt obiektowy
json_decode (, PRAWDA); Zwraca typ associtative tablica
użyć tego kodu do dekodowania danych json kodują
$encode = $your_json_encoded_data
json_decode($encode, TRUE);
zasadzie json_decode() zwróci dwa rodzaje danych.
1) Object
2) Associative array
Domyślnie json_decode() zwraca wartość typu obiektu.
Ale jeśli chcesz mieć wartość jako format tablicy, musisz użyć TRUE
jako drugiego argumentu w json_decode().
przykład,
$decoded_value = json_decode($json_encoded_value, TRUE);
Co tablica wygląda? –