Пример-1: Штампање ЈСОН-а без форматирања
јсон_енцоде () функција ПХП користи се за рашчлањивање било којих ЈСОН података. Направите датотеку са именом екп1.пхп са следећим кодом за читање једноставних ЈСОН података и испис резултата. Овде је проглашен асоцијативни низ за генерисање ЈСОН података. Форматирање се не примењује за ЈСОН податке у коду. Дакле, ЈСОН подаци ће се штампати у једном реду у ЈСОН формату.
екп1.пхп
// Деклариши низ$ цоурсес = арраи ("Модуле-1" => "ХТМЛ", "Модуле-2" => "ЈаваСцрипт", "Модуле-3" => "ЦСС3",
"Модуле-4" => "ПХП");
// Штампање низа у једноставном ЈСОН формату
ецхо јсон_енцоде ($ курсеви);
?>
Излаз:
Следећи излаз ће се појавити након извршавања датотеке из прегледача.
хттп: // лоцалхост / јсон / екп1.пхп
Пример-2: Штампање ЈСОН-а помоћу опције ЈСОН_ПРЕТТИ_ПРИНТ и функције заглавља ()
ПХП има опцију која се зове 'ЈСОН_ПРЕТТИ_ПРИНТ' који се користи са јсон_енцоде () функција за испис ЈСОН података са правилним поравнањем и одређеним форматом. Направите датотеку са именом екп2.пхп са следећим кодом. У коду се користи исти низ из претходног примера да се види употреба ЈСОН_ПРЕТТИ_ПРИНТ опција. заглавље () Овде се користи функција за обавештавање прегледача о садржају датотеке. Ниједно форматирање се неће применити без ове функције.
екп2.пхп
// Деклариши низ$ цоурсес = арраи ("Модуле-1" => "ХТМЛ", "Модуле-2" => "ЈаваСцрипт", "Модуле-3" => "ЦСС3",
"Модуле-4" => "ПХП");
// Обавестите прегледач о типу датотеке помоћу функције заглавља
заглавље ('Тип садржаја: текст / јавасцрипт');
// Штампање низа у једноставном ЈСОН формату
ецхо јсон_енцоде ($ курсеви, ЈСОН_ПРЕТТИ_ПРИНТ);
?>
Излаз:
Следећи излаз ће се појавити након извршавања датотеке из прегледача. Примијениће се одређени фонт и поравнање.
хттп: // лоцалхост / јсон / екп2.пхп
Пример-3: Штампање ЈСОН-а помоћу опције ЈСОН_ПРЕТТИ_ПРИНТ и ознака
Обликовање које је примењено у претходном примеру може се извршити коришћењем 'пре'ознака на месту заглавље () функцију. Направите датотеку са именом екп3.пхп са следећим кодом. У овом примеру, почев 'пре' таг се користи пре генерисања ЈСОН података. Излаз ће бити сличан претходном примеру.
екп3.пхп
$ дата_арр = арраи ('Робин Никон' => 'Учење ПХП-а, МиСКЛ-а и ЈаваСцрипт-а','Јон Дуцкетт' => 'ХТМЛ и ЦСС: Дизајн и израда веб локација', 'Роб Фостер' =>
„Кувар књига ЦодеИгнитер 2“);
?>
ецхо јсон_енцоде ($ дата_арр, ЈСОН_ПРЕТТИ_ПРИНТ);
?>
Излаз:
Следећи излаз ће се појавити након извршавања датотеке из прегледача.
хттп: // лоцалхост / јсон / екп3.пхп
Пример-4: Шарено ЈСОН штампање помоћу прилагођене функције
Форматирани ЈСОН подаци се штампају помоћу ЈСОН_ПРЕТТИ_ПРИНТ опција ПХП-а у претходним примерима. Али ако желите да штампате ЈСОН податке у прилагођеном формату, онда је боље користити кориснички дефинисану функцију ПХП-а. У овом примеру је углавном приказано како можете применити ЦСС у ЈСОН подацима користећи ПХП. Направите ПХП датотеку са именом екп4.пхп са следећим кодом. У овом примеру се користе велики ЈСОН подаци који се чувају у променљивој, $ података. Кориснички дефинисана функција, претти_принт () користи се у коду за форматирање ЈСОН података. Ова функција има аргумент који је некада преносио ЈСОН податке. А за петља се користи у функцији за рашчлањивање ЈСОН података и примену различитог типа форматирања пре штампања података.
екп4.пхп
// Дефинишите велики јсон податак$ дата = '"квиз банка": "Рачунар": "к1": "питање": "ко је проналазач
рачунар?"," оптионс ": [" Тхомас Алва Едисон "," Цхарлес Баббаге "," Блаисе Пасцал ",
"Пхило Фарнсвортх"], "одговор": "Цхарлес Баббаге", "к2": "питање":
„који је од следећих улазни уређај?"," оптионс ": [" Штампач "," Скенер “,
"Монитор", "Кеибоард"], "ансвер": "Кеибоард", "ПХП": "к1": "куестион":
„Која је врста језика ПХП?"," оптионс ": [" Хигх Левел Лангуаге "," Лов левел
Језик "," Језик скриптирања "," Језик скупштине "]," одговор ":" Језик скриптовања ",
"к2": "куестион": "Који је пуни облик ПХП-а?"," оптионс ": [" Хипертект Препроцессор ",
„Лични кућни пакет“, „Процесор хипертекста“, „Пердонална ХТМЛ страница“], „одговор“:
"Хипертект Препроцессор" ';
// позивамо прилагођену функцију за форматирање јсон података
ецхо претти_принт ($ дата);
// Прогласите прилагођену функцију за форматирање
функција претти_принт ($ јсон_дата)
// Иницијализација променљиве за додавање простора
$ простор = 0;
$ застава = нетачно;
//Користећи
ознака за форматирање поравнања и фонта
одјек "";";
// петља за понављање пуних јсон података
фор ($ бројач = 0; $ бројач
// Провера завршетка друге и треће заграде
иф ($ јсон_дата [$ цоунтер] == '' || $ јсон_дата [$ цоунтер] == ']')
$ спаце--;
ецхо "\ н";
ецхо стр_репеат (", ($ размак * 2));
// Провера двоструких наводника (“) и зареза (,)
иф ($ јсон_дата [$ цоунтер] == '"' && ($ јсон_дата [$ цоунтер-1] == ',' ||
$ јсон_дата [$ цоунтер-2] == ','))
ецхо "\ н";
ецхо стр_репеат (", ($ размак * 2));
иф ($ јсон_дата [$ цоунтер] == '"' && !$ флаг)
иф ($ јсон_дата [$ цоунтер-1] == ':' || $ јсон_дата [$ цоунтер-2] == ':')
// Додајте форматирање за питање и одговор
одјек '';
иначе
// Додајте форматирање за опције одговора
одјек '';
ецхо $ јсон_дата [$ цоунтер];
// Провера услова за додавање закључне ознаке распона
иф ($ јсон_дата [$ цоунтер] == '"' && $ флаг)
одјек '';
иф ($ јсон_дата [$ цоунтер] == '"')
$ застава = !$ флаг;
// Провера почетне друге и треће заграде
иф ($ јсон_дата [$ цоунтер] == '' || $ јсон_дата [$ цоунтер] == '[')
$ простор ++;
ецхо "\ н";
ецхо стр_репеат (", ($ размак * 2));
одјек "
?>Излаз:
Следећи излаз ће се појавити након извршавања датотеке из прегледача. Овде ће се одштампати свако питање и одговор на ЈСОН податке Плави боја и одважан формату, а други део ће се одштампати црвена боја.
хттп: // лоцалхост / јсон / екп4.пхп
Закључак
У овом чланку је приказано како можете да одштампате форматиране ЈСОН податке помоћу различитих ПХП опција. Надам се да ће читалац моћи да примени ПХП за форматирање ЈСОН података и генерише прилично ЈСОН излаз након што правилно вежба горе наведене примере.