웹 개발 과정에서 전송을 위해 PHP의 데이터를 JSON 형식으로 변환해야 하는 경우가 종종 있습니다. PHP에는 JSON 형식으로 변환해야 하는 두 가지 일반적인 데이터 유형, 즉 배열과 객체가 있습니다. 이 글에서는 PHP의 배열과 객체를 JSON 형식으로 변환하는 방법, JSON 형식을 배열이나 객체로 변환하는 방법을 소개합니다.
1. PHP 배열을 JSON 형식으로 변환
1. json_encode() 함수를 사용하세요.
PHP에서는 json_encode() 함수를 사용하여 배열을 JSON 형식으로 변환할 수 있습니다. 이 함수는 JSON 형식으로 변환해야 하는 배열인 하나의 매개변수를 받습니다. 다음은 예시입니다.
$array = array('name' => '张三', 'age' => 20); $json = json_encode($array); echo $json;
실행 후 출력 결과는 다음과 같습니다.
{"name":"张三","age":20}
위 코드는 이름과 나이가 포함된 배열을 JSON 형식으로 변환합니다.
기본적으로 json_encode() 함수는 배열의 키 이름을 JSON의 속성 이름으로 변환합니다. JSON 형식의 키 이름을 유지해야 하는 경우 이 함수를 사용할 때 특수 매개변수 JSON_FORCE_OBJECT를 이 함수에 전달할 수 있습니다. 예:
$array = array('name' => '张三', 'age' => 20); $json = json_encode($array, JSON_FORCE_OBJECT); echo $json;
실행 후 출력 결과는 다음과 같습니다.
{"name":"张三","age":20}
보시다시피 여기의 결과는 이전 예와 동일합니다.
2. foreach를 사용하여 배열을 반복합니다.
PHP 배열을 JSON 형식으로 변환하는 또 다른 방법은 foreach를 사용하여 배열을 반복하는 것입니다. 예:
$array = array('name' => '张三', 'age' => 20); $json = '{'; foreach ($array as $key => $value) { $json .= '"' . $key . '":"' . $value . '",'; } $json = substr($json, 0, -1); $json .= '}'; echo $json;
출력 결과는 다음과 같습니다.
{"name":"张三","age":"20"}
보시다시피 이 코드는 배열을 JSON 형식으로도 변환합니다. 그러나 이 방법은 문자열을 수동으로 연결해야 하므로 더 번거롭습니다.
2. PHP 객체를 JSON 형식으로 변환
1. json_encode() 함수를 사용하세요.
PHP에서는 배열과 유사하게 json_encode() 함수를 사용하여 객체를 JSON 형식으로 변환할 수도 있습니다. 다음은 예입니다.
class Student { public $name; public $age; } $student = new Student(); $student -> name = "张三"; $student -> age = 20; $json = json_encode($student); echo $json;
코드 변환 후 출력 결과는 다음과 같습니다.
{"name":"张三","age":20}
보시다시피 이 코드는 Student 유형 개체를 JSON 형식으로 변환합니다.
객체 유형 정보를 JSON 형식으로 보존해야 하는 경우 json_encode() 함수를 사용할 때 특수 매개변수 JSON_UNESCAPED_UNICODE를 전달할 수 있습니다. 예:
class Student { public $name; public $age; } $student = new Student(); $student -> name = "张三"; $student -> age = 20; $json = json_encode($student, JSON_UNESCAPED_UNICODE); echo $json;
실행 후 출력 결과는 다음과 같습니다.
{"name":"张三","age":20,"__className":"Student"}
2. json_encode() 함수 및 배열 탐색을 사용하세요.
PHP에서 배열과 유사하게 foreach를 사용하여 객체 속성을 반복할 수도 있습니다. 예:
class Student { public $name; public $age; } $student = new Student(); $student -> name = "张三"; $student -> age = 20; $json = '{'; foreach ($student as $key => $value) { $json .= '"' . $key . '":"' . $value . '",'; } $json = substr($json, 0, -1); $json .= '}'; echo $json;
실행 후 출력 결과는 다음과 같습니다.
{"name":"张三","age":"20"}
보시다시피 이 코드는 개체를 JSON 형식으로도 변환합니다. 그러나 이 방법은 문자열을 수동으로 연결해야 하므로 더 번거롭습니다.
3. JSON을 PHP 배열 또는 개체로 변환
웹 개발을 할 때 프런트엔드 페이지에서 JSON 형식의 데이터를 가져와 후속 처리를 위해 PHP에서 배열이나 개체로 변환해야 하는 경우가 많습니다. JSON을 PHP의 배열이나 객체로 변환하는 방법은 다음과 같습니다.
1. JSON을 배열로 변환하려면 json_decode() 함수를 사용하세요.
JSON 형식 데이터를 PHP 배열로 변환하려면 json_decode() 함수를 사용할 수 있습니다. 이 함수에는 두 개의 매개변수가 있는데, 첫 번째는 변환해야 하는 JSON 문자열이고, 두 번째는 배열을 PHP 객체로 변환할지 여부를 지정하는 데 사용되는 부울 값입니다. 기본값은 false입니다. 즉, 배열로 변환됩니다. . 예:
$json = '{"name":"张三","age":20}'; $array = json_decode($json, true); var_dump($array);
실행 후 출력 결과는 다음과 같습니다.
array(2) { ["name"]=> string(6) "张三" ["age"]=> int(20) }
보시다시피 이 함수는 JSON 형식의 데이터를 PHP 배열로 변환하여 결과를 출력합니다.
2. JSON을 객체로 변환하려면 json_decode() 함수를 사용하세요.
배열로 변환하는 것 외에도 json_decode() 함수를 사용하면 JSON 형식 데이터를 PHP 객체로 변환할 수 있습니다. 예:
$json = '{"name":"张三","age":20}'; $obj = json_decode($json); var_dump($obj);
실행 후 출력 결과는 다음과 같습니다.
class stdClass#1 (2) { public $name => string(6) "张三" public $age => int(20) }
보시다시피 이 함수는 JSON 형식의 데이터를 PHP 객체로 변환하여 결과를 출력합니다.
요약하자면, PHP의 배열과 객체를 JSON 형식으로 변환하는 방법에는 여러 가지가 있으며, 실제 상황에 따라 선택하여 사용할 수 있습니다. 동시에 프런트 엔드 페이지에서 JSON 형식 데이터를 가져와 PHP에서 배열이나 개체로 변환할 때 사용할 수 있는 해당 함수도 있습니다. 이러한 기능의 올바른 사용을 익히는 것은 웹 애플리케이션 개발에 매우 중요합니다.
위 내용은 PHP의 배열과 객체를 JSON 형식으로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!