Funkcja PHP JSON_ENCODE

Funkcja PHP JSON_ENCODE
JSON to popularny format danych, który jest używany do serializacji i przesyłania danych strukturalnych między serwerem WWW i aplikacji, ponieważ plik JSON jest czytany ludzki i lekki. JSON_ENCODE () to wbudowana funkcja PHP, która przekształca tablicę lub obiekt w dane JSON w różnych celach. Różne zastosowania tej funkcji pokazano w tym samouczku.

Składnia

Pierwszy argument tej funkcji jest obowiązkowy, a pozostałe dwa argumenty są opcjonalne. Zwraca dane JSON, jeśli dane zostaną poprawnie przekonwertowane na format JSON, w przeciwnym razie zwraca FAŁSZ.

String | False json_encode (mieszany $ wartość [, int $ flags = 0 [, int $ głębh = 512]]);

Pierwszy argument zawiera wartość, która zostanie zakodowana w formacie JSON.

Drugim argumentem jest ustawienie wartości maski bitowej w momencie konwersji.

JSON_FORCE_OBject, JSON_HEX_QUOT,
JSON_HEX_TAG, JSON_HEX_AMP,
JSON_HEX_APOS, JSON_INVALID_UTF8_IGNORE,
JSON_INVALID_UTF8_SUBSTITUTE, JSON_NUMERIC_CHECK,
JSON_PARTIAL_OUTPUT_ONRORROR, JSON_PRESERVE_ZERO_FRACTION,
JSON_PRETTY_PRINT, JSON_UNESCAPED_LINE_TERMINGORS,
JSON_UNESCAPED_SLASHES, JSON_UNESCAPED_UNICODE,
JSON_TROW_ON_ERROR.

Trzeci argument służy do ustawienia maksymalnej głębokości, która będzie większa niż 0.

Użycie funkcji JSON_ENCODE ()

Sposoby konwersji różnych rodzajów danych na format JSON pokazano w tej części samouczka za pomocą różnych przykładów.

Przykład-1: Konwertuj tablicę PHP na dane JSON

Utwórz plik PHP z następującym skryptem, aby poznać sposób przekształcenia tablicy asocjacyjnej w dane JSON. W skrypcie ogłoszono szereg asocjacyjny 4 elementów. Wartości tablicy i przekonwertowane wartości JSON zostaną wydrukowane.

// Konwertuj tablicę na dane JSON
$ jsondata = json_encode ($ student);
// Wydrukuj dane JSON
Echo "
Wartości JSON to:
". $ jsondata;
?>

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu.

Przykład-2: Konwertuj tablicę na dane JSON za pomocą JSON_Numeric_Check

Utwórz plik PHP z następującym skryptem, który przekonwertuje tablicę na dane JSON, zmieniając liczbowe wartości łańcucha tablicy na liczby. Wartość maski bitowej, json_numeric_check został użyty w drugim argumencie do konwersji liczbowych wartości ciągów na liczbę. Wartości tablicy i konwertowane wartości JSON zostaną wydrukowane później.

// zadeklaruj szereg różnych rodzajów danych
$ mix_array = tablica („897”, '4.53 ', 100, „-14”, „2.5e3 ', 67, „Linuxhint”, prawda);
// Wydrukuj wartości tablicy
Echo "Wartości tablicy to:
";
print_r ($ mix_array);
// Konwertuj tablicę na dane JSON, sprawdzając wartość liczbową
$ jsondata = json_encode ($ mix_array, json_numeric_check);
// Wydrukuj dane JSON
Echo "

Wartości JSON to:
". $ jsondata;
?>

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. W wyjściu cztery liczbowe wartości łańcuchowe przekonwertowały na liczbę, a wartość logiczna przekonwertowała na liczbę.

Przykład-3: Konwertuj tablicę na dane JSON po usunięciu wartości tablicy

Utwórz plik PHP z następującym skryptem, aby sprawdzić sposób przekształcenia wartości tablicy w dane JSON po usunięciu elementu z tablicy. Tutaj zadeklarował asocjacyjny zestaw 4 elementów. Tablica przekonwertowała na dane JSON przed usunięciem dowolnego elementu i po usunięciu jednego elementu. Trzeci element tablicy usunęł w skrypcie.

$ assc_array = array (101 => „Pen”, 102 => „ołówek”, 103 => „notatnik”, 104 => „linijka”);
// Wydrukuj wartości tablicy
Echo "Wartości tablicy to:
";
print_r ($ assc_array);
// Konwertuj tablicę na dane JSON
$ jSondata = json_encode ($ assc_array);
// Wydrukuj dane JSON
Echo "

Wartości JSON to:
". $ jsondata;
unset ($ assc_array [103]);
// Wydrukuj wartości tablicy
Echo "

Wartości tablicy po usunięciu to:
";
print_r ($ assc_array);
// Konwertuj tablicę na dane JSON
$ jSondata = json_encode ($ assc_array);
// Wydrukuj dane JSON
Echo "

Wartości JSON zmodyfikowanej tablicy to:
". $ jsondata;
?>

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu.

Przykład-4: Konwertuj tablicę wielowymiarową na dane JSON

Utwórz plik PHP z następującym skryptem, aby poznać sposób konwersji wielowymiarowej tablicy asocjacyjnej w dane JSON. Wartości tablicy i przekonwertowanych danych JSON tablicy zostaną wydrukowane na wyjściu.

// zadeklaruj tablicę wielowymiarową
$ kursy = tablica (
„dział” => „cse”,
„Semestr” => 2,
szyk(
„CSE-202” => „C Programowanie”,
„CSE-203” => „Digital Logic Design”,
„CSE-204” => „Algorytm”,
„Math-102” => „Matematyka”
)
);
// Wydrukuj wartości tablicy
Echo "Wartości tablicy to:
";
print_r ($ kursy);
// Konwertuj tablicę na dane JSON
$ jsondata = json_encode ($ kursy);
// Wydrukuj dane JSON
Echo "

Wartości JSON to:
". $ jsondata;
?>

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu.

Przykład-5: Konwertuj obiekt na dane JSON

Utwórz plik PHP z następującym skryptem, aby poznać sposób przekształcenia obiektu w dane JSON. Klasa o nazwie klasa testowa została zdefiniowana w skrypcie, który ma 3 zmienne publiczne. Następnie zmienna obiektu została zadeklarowana, a zmienne klasowe zainicjowały się za pomocą obiektu. Właściwości obiektu i konwertowane wartości JSON obiektu zostaną wydrukowane na wyjściu.

// zadeklaruj prostą klasę
klasa testowa
publiczne $ var1;
publiczne $ var2;
publiczne $ var3;

// zadeklaruj przedmiot klasy
$ object = new TestClass ();
// zainicjuj zmienne klasy
$ object-> var1 = "Good";
$ object-> var2 = "lepszy";
$ object-> var3 = "best";
// Wydrukuj właściwe obiekt
Echo "Wartości właściwości obiektu to:
";
print_r ($ object);
// Konwertuj obiekt na dane JSON
$ jSondata = json_encode ($ object);
// Wydrukuj dane JSON
Echo "

Wartości JSON to:
". $ jsondata;
?>

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu.

Przykład-6: Konwertuj tablicę na dane JSON za pomocą JSON_PRESERVE_ZERO_FRACTION

Utwórz plik PHP z następującym skryptem, aby przekonwertować tablicę danych ułamkowych na dane JSON poprzez zachowanie wartości zerowej.

Wartość maski bitowej, JSON_PRESERVE_ZERO_FRACTION została użyta w drugim argumencie funkcji JSON_ENCODE (), aby zachować zerowe wartości ułamkowe tablicy. Wartości tablicy i dane JSON o zerowym ułamku i bez frakcji zerowej zostaną wydrukowane na wyjściu.

// zadeklaruj szereg danych liczbowych
$ num_array = tablica (78.56, 80.0, 45.09, 51.0);
// Wydrukuj wartości tablicy
Echo "Wartości tablicy to:
";
print_r ($ num_array);
// Konwertuj tablicę na dane JSON
$ jsondata = json_encode ($ num_array);
// Wydrukuj dane JSON
Echo "

Wartości JSON to:
". $ jsondata;
// Konwertuj tablicę na dane JSON za pomocą JSON_PRESERVE_ZERO_FRACTION
$ jsondata = json_encode ($ num_array, json_preserve_zero_fraction);
// Wydrukuj dane JSON
Echo "

Wartości JSON po zachowaniu zerowego ułamka to:
". $ jsondata;
?>

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu.

Wniosek

Sposoby konwersji wartości tablicy i właściwości obiektów za pomocą funkcji JSON_ENCODE () zostały wyjaśnione w tym samouczku za pomocą prostych przykładów. Mam nadzieję, że użytkownicy PHP będą mogli poprawnie użyć tej funkcji po przeczytaniu tego samouczka.