라이브러리

[PHP] json_last_error - 마지막으로 발생한 오류를 반환합니다.




JSON_last_error() 함수


PHP의 `json_last_error()` 함수는 JSON 관련 오류를 검사하는 함수입니다. 이 함수는 JSON 데이터를 처리하는 동안 발생한 오류를 반환합니다. 오류가 없을 때는 0을 반환하고, 오류가 발생했을 때는 오류 코드를 반환합니다.

오류 코드


`json_last_error()` 함수는 오류 코드를 반환합니다. 오류 코드는 다음과 같습니다.

* `JSON_ERROR_NONE`: 오류가 없을 때 반환
* `JSON_ERROR_DEPTH`: JSON 데이터의 깊이가 너무 깊을 때 반환
* `JSON_ERROR_STATE_MISMATCH`: JSON 데이터의 상태가 일치하지 않을 때 반환
* `JSON_ERROR_CTRL_CHAR`: JSON 데이터의 제어 문자가 발견되었을 때 반환
* `JSON_ERROR_SYNTAX`: JSON 데이터의 문법 오류가 있을 때 반환
* `JSON_ERROR_UTF8`: JSON 데이터의 UTF-8 인코딩 오류가 있을 때 반환
* `JSON_ERROR_RECURSION`: JSON 데이터의 재귀적 구조가 있을 때 반환
* `JSON_ERROR_INF_OR_NAN`: JSON 데이터의 무한이나 무의미한 값이 있을 때 반환
* `JSON_ERROR_UTF16`: JSON 데이터의 UTF-16 인코딩 오류가 있을 때 반환

예제


다음 예제는 `json_last_error()` 함수를 사용하여 JSON 데이터를 처리하는 동안 발생한 오류를 검사하는 방법을 보여줍니다.

#hostingforum.kr
php

// 오류가 없을 때

$json_data = '{"name": "John", "age": 30}';

$json = json_decode($json_data, true);

echo json_last_error(); // 0



// 오류가 있을 때

$json_data = '{"name": "John", "age": abc}';

$json = json_decode($json_data, true);

echo json_last_error(); // 4 (JSON_ERROR_SYNTAX)



// 오류 코드를 확인하는 방법

$json_data = '{"name": "John", "age": abc}';

$json = json_decode($json_data, true);

$error_code = json_last_error();

switch ($error_code) {

    case JSON_ERROR_NONE:

        echo "오류가 없습니다.";

        break;

    case JSON_ERROR_DEPTH:

        echo "JSON 데이터의 깊이가 너무 깊습니다.";

        break;

    case JSON_ERROR_STATE_MISMATCH:

        echo "JSON 데이터의 상태가 일치하지 않습니다.";

        break;

    case JSON_ERROR_CTRL_CHAR:

        echo "JSON 데이터의 제어 문자가 발견되었습니다.";

        break;

    case JSON_ERROR_SYNTAX:

        echo "JSON 데이터의 문법 오류가 있습니다.";

        break;

    case JSON_ERROR_UTF8:

        echo "JSON 데이터의 UTF-8 인코딩 오류가 있습니다.";

        break;

    case JSON_ERROR_RECURSION:

        echo "JSON 데이터의 재귀적 구조가 있습니다.";

        break;

    case JSON_ERROR_INF_OR_NAN:

        echo "JSON 데이터의 무한이나 무의미한 값이 있습니다.";

        break;

    case JSON_ERROR_UTF16:

        echo "JSON 데이터의 UTF-16 인코딩 오류가 있습니다.";

        break;

    default:

        echo "알 수 없는 오류가 발생했습니다.";

        break;

}



이 예제는 `json_last_error()` 함수를 사용하여 JSON 데이터를 처리하는 동안 발생한 오류를 검사하는 방법을 보여줍니다. 오류가 없을 때는 0을 반환하고, 오류가 발생했을 때는 오류 코드를 반환합니다. 오류 코드를 확인하는 방법은 `switch` 문을 사용하여 오류 코드를 확인하는 방법을 보여줍니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 434 페이지

검색

게시물 검색