JSON은 XML보다 작고 빠르며 구문 분석하기 쉬운 경량 텍스트 데이터 형식입니다. 따라서 PHP 개발 과정에서 데이터 전송에 자주 사용됩니다. PHP가 JSON 데이터를 작동하는 방법
PHP는 AJAX에서 일반적으로 사용되는 JSON 데이터를 작동합니다. JSON 형식 데이터를 AJAX로 전달하거나 AJAX에서 반환된 JSON 데이터를 구문 분석할 수 있습니다. 우리가 필요한 문자열로. PHP에서는 json_decode() 함수를 사용하여 JSON 형식의 데이터를 구문 분석하고, json_encode() 함수를 사용하여 문자열(배열)을 JSON 형식으로 생성할 수 있습니다.
먼저 예를 살펴보세요:
예 1:
Php 코드
<?php $json = '{"a":1, "b":2, "c":3, "d":4, "e":5 }'; var_dump(json_decode($json)); echo "<br/>"; var_dump(json_decode($json,true)); ?>
출력:
object(stdClass)#1 (5) { ["a"]=> int(1) ["b"]=> int(2) ["c"]=> d" ]=> int(4) ["e"]=> int(5) }
array(5) { ["a"]=> int(1) ["b" ]= > int(2) ["c"]=> int(3) ["d"]=> int(4) ["e"]=> >예제 2:
PHP 코드
<?php $arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5); echo json_encode($arr); ?>
출력:
{"a":1,"b ": 2,"c":3,"d":4,"e":5}
예제 1에서 json_decode 함수를 사용하여 JSON을 변환할 수 있음을 알 수 있습니다. 그러나 JSON 데이터가 JSON 데이터에 중첩된 경우 이와 같이 직접 작성할 수 없습니다. 중첩된 JSON 데이터를 배열로 변환하려면 사용자 정의 함수를 사용해야 합니다.
예:
Php 코드
호출 예:<?php function json_to_array($web){ $arr=array(); foreach($web as $k=>$w){ if(is_object($w)) $arr[$k]=json_to_array($w); //判断类型是不是object else $arr[$k]=$w; } return $arr; } ?>
Php 코드
<?php $s='{"webname":"UncleToo","url":"www.uncletoo.com","menu":{"PHP":"1","DataBase":"2","Web":"3"}}'; $web=json_decode($s); $arr=json_to_array($web); print_r($arr); ?>
출력:
Array ( [웹 이름] => UncleToo [url] => www.uncletoo.com [menu] => Array ( [PHP] => 1 [DataBase] => 2 [Web] => 3 ) )
위 내용은 PHP에서 JSON 데이터를 조작하는 일반적인 방법입니다. 다른 아이디어나 방법이 있으면 UncleToo와 논의하세요.