라이브러리
[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` 문을 사용하여 오류 코드를 확인하는 방법을 보여줍니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.