[PHP] JSON (JavaScript Object Notation)

coding_wizard·2022년 6월 19일
0

php

목록 보기
11/23

Tistory로 작성된 글을 Velog로 옮기는 중입니다.
원글 : https://paric.tistory.com/784?category=805373

JSON 데이터 교환 형식을 구현합니다. PHP에는 PHP용으로 특별히 작성되고 PHP 라이선스에 따라 라이선스가 부여된 파서가 함께 제공됩니다.

json_encode(mixed $value, int $flags = 0, int $depth = 512): string|false

제공된 $value의 JSON 표현을 포함하는 문자열을 반환합니다.

모든 $flags 값은 JSON 상수 페이지에 설명되어 있습니다.


json_decode()

json_decode(
    string $json,
    ?bool $associative = null,
    int $depth = 512,
    int $flags = 0
): mixed

JSON으로 인코딩된 문자열을 가져와 PHP 변수로 변환합니다.

(이 함수는 UTF-8로 인코딩된 문자열에서만 작동합니다.)

Example #1 JSON_NUMERIC_CHECK 옵션 예제

echo "Strings representing numbers automatically turned into numbers".PHP_EOL;
$numbers = array('+123123', '-123123', '1.2e3', '0.00001');
var_dump(
    $numbers,
    json_encode($numbers, JSON_NUMERIC_CHECK)
);
echo "Strings containing improperly formatted numbers".PHP_EOL;
$strings = array('+a33123456789', 'a123');
var_dump(
    $strings,
    json_encode($strings, JSON_NUMERIC_CHECK)
);

// result to:
// Strings representing numbers automatically turned into numbers
array(4) {
    [0]=>
    string(7) "+123123"
    [1]=>
    string(7) "-123123"
    [2]=>
    string(5) "1.2e3"
    [3]=>
    string(7) "0.00001"
}
string(28) "[123123,-123123,1200,1.0e-5]"
// Strings containing improperly formatted numbers
array(2) {
    [0]=>
    string(13) "+a33123456789"
    [1]=>
    string(4) "a123"
}
string(24) "["+a33123456789","a123"]"



JavaScript Object Notation

  • JsonException — JsonException 클래스
  • JsonSerializable — JsonSerializable 인터페이스
    JsonSerializable::jsonSerialize — JSON으로 직렬화해야 하는 데이터 지정

JSON 함수

  • json_decode — JSON 문자열을 디코딩합니다.
  • json_encode — 값의 JSON 표현을 반환합니다.
  • json_last_error_msg — 마지막 json_encode() 또는 json_decode() 호출의 오류 문자열을 반환합니다.
  • json_last_error — 마지막으로 발생한 오류를 반환합니다.
profile
여러분들 삶에 한 획을 더하고 싶습니다.

0개의 댓글