차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판이전 판
다음 판
이전 판
tech:json_php [2020/10/30 00:38] – 이전 판으로 되돌림 (2017/08/23 09:48) V_Ltech:json_php [2020/10/30 00:46] (현재) – [Json php 파싱] V_L
줄 2: 줄 2:
 ====== Json php 파싱 ====== ====== Json php 파싱 ======
  
-[[json]]+PHP 버전이 5.2 이상이라면 PHP에도 [[JSON]] 파서가 기본으로 내장되어있다. 
 + 
 +  * [[https://www.php.net/manual/en/function.json-decode.php|json_decode]] — JSON 문자열을 PHP 배열로 바꾼다. 
 +  * json_encode — PHP 배열을 JSON 문자열로 바꾼다. 
 +  * json_last_error — 마지막으로 일어난 에러 코드를 반환한다. 
 +  * json_last_error_msg — 마지막으로 일어난 에러 메시지를 반환한다.
  
 파일에서 불러오려면 파일에서 불러오려면
  
   $string = file_get_contents("test.json");   $string = file_get_contents("test.json");
 +  $json=json_decode($string);
  
-PHP에서 파싱할 대상은 문자열 형태를 갖쳐야 한다.+PHP에서 파싱할 대상은 문자열 형태야 한다.
 즉, 작은따옴표로 둘러 싸여야 한다. 즉, 작은따옴표로 둘러 싸여야 한다.
   $json = '{"champions":[{"id":266,"active":true},{"id":103,"active":true}]}';   $json = '{"champions":[{"id":266,"active":true},{"id":103,"active":true}]}';
줄 14: 줄 20:
 그리고 json_decode() 함수를 이용하여 디코딩 그리고 json_decode() 함수를 이용하여 디코딩
   $decode = json_decode($json, true);   $decode = json_decode($json, true);
- +두번째 인자로 true를 주면 배열로 반환하므로 배열스타일로 값을 참조한다. 
-그 후 배열스타일로 값을 참조한다.+<file php>
   $array_a = $decode['champions'][0]['id'];    $array_a = $decode['champions'][0]['id']; 
   echo $array_a;   echo $array_a;
- 
  
     echo "<br/><br/>";     echo "<br/><br/>";
줄 28: 줄 33:
     echo $value['active']."<br/>";     echo $value['active']."<br/>";
    }    }
 +</file>