php json 파싱 예제

json_string – 그것은 UTF-8 인코딩 된 데이터여야하는 인코딩 된 문자열입니다. 그런 다음 json_decode() 함수를 사용하여 JSON 문자열을 PHP 개체로 변환합니다. JSON 데이터를 디코딩하는 것은 인코딩하는 것만큼 간단합니다. PHP json_decode() 함수를 사용하여 JSON 인코딩된 문자열을 적절한 PHP 데이터 유형으로 변환할 수 있습니다. 다음 예제에서는 JSON 개체를 PHP 개체로 디코딩하거나 변환하는 방법을 보여 줍니다. 적절한 PHP 유형에서 json으로 인코딩된 값을 반환합니다. true, false 및 null 값은 각각 TRUE, FALSE 및 NULL로 반환됩니다. json을 디코딩할 수 없거나 인코딩된 데이터가 재귀 제한보다 깊은 경우 NULL이 반환됩니다. 이 예제에서는 foreach() : /* 루프 */ endforeach처럼 보이는 foreach에 대한 대체 구문을 사용하고 있습니다.

대신 foreach() { /* 루프 */ }. HTML을 능가할 때 이 작업을 수행하는 것이 좋습니다. 예를 들어 테이블에 데이터를 표시할 수 있습니다. 디코딩에 실패한 경우 json_last_error()를 사용하여 오류의 정확한 특성을 확인할 수 있습니다. JSON은 자바 스크립트 개체 표기이의 약자입니다. .json 파일에 저장된 데이터이며 일련의 키/값 쌍으로 구성됩니다. 이 자습서에서는 완벽한 GitHub의 리포지토리를 찾았습니다. 그것은 색상 이름과 육신 번호의 거대한 목록이 포함되어 있습니다.

여기에서 리포지토리에서 css-color.json을 얻을 수 있습니다. 또는 여기에서 직접 파일을 다운로드할 수 있습니다. 첫째, PHP의 기본 함수 file_get_contents를 사용하여 파일 내용을 읽어야합니다. 첫 번째 매개 변수 file_get_contents가 기대하는 것은 읽기가 필요한 파일의 경로입니다. 이 경우 CSS 색상 이름.json. 또한 json_encode() 함수를 강제로 json_FORCE_OBJECT 옵션을 사용하여 PHP 인덱싱된 배열을 JSON 개체로 반환할 수 있습니다. 예를 들어 CSS에서 사용할 수 있습니다. 다음 코드를 사용하여 배열에서 아쿠아 육수 색상을 요청할 수 있습니다. 물론 이렇게 하면 응용 프로그램에 대한 새로운 기회의 창이 열립니다.

아직 인식하지 못했다면 JSON이 파일 형식으로 올 수 있습니다. 그들은 다음과 같은 이름을 지정합니다 – VitalLogicData.json. 사실상 텍스트 파일이지만 JavaScript 개체 표기법의 스타일로 잘 서식이 지정된 데이터가 포함되어 있습니다. 이러한 파일은 물론 추가된 파일에서 읽거나 읽을 수 있습니다. JSON 개체 및 배열도 중첩될 수 있습니다. JSON 개체에는 다른 JSON 개체, 배열, 중첩된 배열, JSON 개체 배열 등이 임의로 포함될 수 있습니다. 다음 예제에서는 중첩된 JSON 개체를 디코딩하고 PHP에 모든 값을 인쇄하는 방법을 보여 주습니다. JSON은 서버와 브라우저 간에 데이터를 전송하는 데 사용됩니다. 다음은 .json 문자열에 있을 수 있는 기본 예제입니다. 위의 예에서 볼 수 있듯이 비연관 배열은 배열 또는 객체로 인코딩될 수 있습니다.

그러나 연관 배열은 항상 개체로 인코딩됩니다. 지금까지 는 키 /값 쌍으로 JSON 피드만 사용했지만 중첩이 발생하는 것이 일반적입니다. 다음은 wizards.json이라는 새 파일에 저장할 수 있는 또 다른 못생긴 예입니다. PHP == 5.2.0에는 JSON 문자열을 PHP 변수로 디코딩하는 함수json_디코딩이 있습니다. 기본적으로 개체를 반환합니다. 두 번째 매개 변수는 true로 설정하면 개체를 연관 배열로 반환하도록 지시하는 부울을 허용합니다. phP 설명서에서 json_디코딩 함수에 대해 자세히 알아볼 수 있습니다. JSON 배열의 예는 다음과 같이 보이지만 스크립트 태그 내에서 PHP를 사용하면 JavaScript 변수를 정의하는 동안 데이터를 에코 할 수 있습니다. 차례로 JSON은 구문 분석되고 사용할 준비가 됩니다.

Share Button
Posted in Uncategorized.