>  기사  >  백엔드 개발  >  JSON 연산의 PHP 분석 example_php 기술

JSON 연산의 PHP 분석 example_php 기술

WBOY
WBOY원래의
2016-05-16 20:25:52864검색

이 기사에서는 예제를 통해 PHP JSON 작업을 분석합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 분석은 다음과 같습니다.

JSON은 다양한 프로그래밍 언어에서 사용될 수 있으므로 PHP는 JavaScript에서 사용할 JSON 문자열을 출력하는 등 소규모 데이터 전송에 사용할 수 있습니다. PHP에서는 json_decode()를 사용하여 표준화된 문자열의 문자열에서 JSON 객체를 구문 분석하고, json_encode()를 사용하여 JSON 객체에서 표준화된 문자열의 문자열을 생성할 수 있습니다.

예:

코드 복사 코드는 다음과 같습니다.
$json = '{"a":1, "b":2, "c":3, "d":4, "e":5 }';
var_dump(json_decode($json));
var_dump(json_decode($json,true));

출력:

코드 복사 코드는 다음과 같습니다.
object(stdClass)#1 (5) {
["a"] => int(1)
["b"] => int(2)
["c"] => int(3)
["d"] => int(4)
["e"] => int(5)
}

배열(5) {
["a"] => int(1)
["b"] => int(2)
["c"] => int(3)
["d"] => int(4)
["e"] => int(5)
}


코드 복사 코드는 다음과 같습니다.
$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으로 변환합니다. 일반적으로 Javascript에서 보낸 데이터를 받을 때 사용됩니다.

코드 복사 코드는 다음과 같습니다.
$s='{"웹 이름":"homehf","url":"www.homehf.com","연락처":{"qq":"123456789","mail":"nieweihf@163.com", "xx":"xxxxxxx"}}';
$web=json_decode($s);
echo '웹사이트 이름:'.$web->webname.'
웹 주소: '.$web->url.'
연락처: QQ-'.$web- >연락처->qq.' 메일:'.$web->연락처->메일;
?>

위의 예에서는 먼저 변수 s를 정의한 다음 json_decode()를 사용하여 이를 JSON 개체로 구문 분석한 다음 JSON과 동일한 방식으로 사용할 수 있습니다. JSON으로 구현된 XML과 배열은 서로 관련된 일부 데이터를 저장할 수 있지만 개인적으로 JSON이 사용하기 쉽고 JSON과 JavaScript를 사용하여 데이터 공유가 가능하다고 생각합니다.

2.json_encode(), JSON을 문자로 변환하는 기능으로 AJAX 애플리케이션에서 일반적으로 JSON 객체를 문자열로 변환하여 Javascript로 출력하는 데 사용되며 데이터베이스에 저장할 때도 사용됩니다.

코드 복사 코드는 다음과 같습니다.
$s='{"웹 이름":"homehf","url":"www.homehf.com","연락처":{"qq":"123456789","mail":"nieweihf@163.com", "xx":"xxxxxxx"}}';
$web=json_decode($s);
echo json_encode($web);
?>

2.PHP JSON을 배열로

코드 복사 코드는 다음과 같습니다.
$s='{"웹 이름":"homehf","url":"www.homehf.com","qq":"123456789"}';
$web=json_decode($s); //문자를 JSON으로 변환
$arr=배열();
foreach($web as $k=>$w) $arr[$k]=$w;
print_r($arr);
?>

위 코드에서는 JSON 개체가 배열로 변환되었습니다. 그러나 중첩된 JSON인 경우 위 코드는 당연히 아무것도 할 수 없습니다. 그런 다음 중첩된 JSON을 해결하는 함수를 작성합니다.

코드 복사 코드는 다음과 같습니다.
$s='{"웹 이름":"homehf","url":"www.homehf.com","연락처":{"qq":"123456789","mail":"nieweihf@163.com", "xx":"xxxxxxx"}}';
$web=json_decode($s);
$arr=json_to_array($web);
print_r($arr);

함수 json_to_array($web){
$arr=배열();
foreach($web as $k=>$w){
If(is_object($w)) $arr[$k]=json_to_array($w); //객체 유형인지 확인
else $arr[$k]=$w;
}
$arr;
반환 }
?>

이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.