현재 위치: > 최신 기사 목록> json_encode ()를 사용하여 일정한 값을보다 직관적으로보십시오

json_encode ()를 사용하여 일정한 값을보다 직관적으로보십시오

M66 2025-05-28

PHP 개발 중에, 우리는 종종 다양한 상수를 사용하여 코드의 가독성과 유지 보수를 향상시킵니다. 프로젝트의 복잡성이 증가함에 따라 현재 환경에서 정의 된 모든 상수와 그 값을 빠르게 이해하는 것이 매우 실용적인 요구 사항이됩니다. PHP는 현재 스크립트에 정의 된 모든 상수를 반환 할 수있는 매우 편리한 기능 get_defined_constants ()를 제공합니다. JSON_ENCODE () 함수와 결합하여 이러한 상수 값을보다 직관적이고 읽기 쉽게 볼 수 있습니다.

get_defined_constants () 란 무엇입니까?

get_defined_constants () 는 모든 정의 된 상수를 얻는 PHP 내장 기능입니다. 연관 배열을 반환하고 키 이름은 상수 이름이며 키 값은 해당 값입니다. 기본적으로 모든 상수를 반환하거나 실제 매개 변수를 전달함으로써 상수는 사용자 정의 또는 내장 여부에 따라 분류 될 수 있습니다.

예를 들어:

 <?php
$constants = get_defined_constants(true);
print_r($constants);
?>

이 코드는 "내부"(시스템 내장 상수) 및 "사용자"(사용자 사용자 정의 상수)의 두 부분을 포함하여 다차원 배열을 반환합니다.

왜 json_encode ()와 함께 사용합니까?

print_r () 또는 var_dump () 가 배열을 출력 할 때, 특히 많은 상수가있을 때 형식은 상대적으로 지저분합니다. 이는 읽고보기에 불편합니다. JSON_ENCODE ()는 배열을 JSON 문자열 형식으로 변환하여 출력을보다 깔끔하게 만들 수 있으며 빠른 브라우징 또는 추가 처리에 적합합니다.

예를 들어:

 <?php
$constants = get_defined_constants(true);
echo json_encode($constants, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);
?>

JSON_PRETTY_PRINT 옵션을 사용하여 JSON 문자열은 출력을 들여 쓰기 및 라인 파손으로 형식화합니다. JSON_UNESCAPED_SLASHES 옵션은 슬래시를 피하기 때문에 URL 및 기타 컨텐츠를보다 쉽게 ​​읽을 수 있습니다.

실제 예 : 상수를보고 URL 도메인 이름을 교체하십시오

일부 상수에 URL이 포함되어 있다고 가정하면 URL의 도메인 이름을 M66.net으로 바꿔야합니다. 다음은 샘플 코드입니다.

 <?php
// 모든 상수를 얻으십시오,카테고리별로 반환
$constants = get_defined_constants(true);

// 도우미 기능을 정의하십시오,배열을 재귀 적으로 교체하십시오URL도메인 이름
function replaceDomainInArray($array, $oldDomain, $newDomain) {
    foreach ($array as $key => $value) {
        if (is_array($value)) {
            $array[$key] = replaceDomainInArray($value, $oldDomain, $newDomain);
        } else if (is_string($value)) {
            // 정기적 인 교체를 사용하십시오URL中的도메인 이름
            $array[$key] = preg_replace(
                '#https?://([^/]+)#i',
                'https://' . $newDomain,
                $value
            );
        }
    }
    return $array;
}

// 모든 상수를 교체하십시오URL的도메인 이름为m66.net
$constants = replaceDomainInArray($constants, 'example.com', 'm66.net');

// 사용json_encode형식으로JSON산출
echo json_encode($constants, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);
?>

위의 코드는 먼저 모든 상수를 얻은 다음 재귀 함수를 통해 문자열의 URL을 검색하고 도메인 이름을 대체하고 쉽게보기 및 디버깅을 위해 형식화 된 JSON으로 출력합니다.

요약

  • get_defined_constants ()는 모든 현재 PHP 상수를 볼 수있는 강력한 도구입니다.

  • JSON_ENCODE () 의 형식화 된 출력과 결합하여 상수 값을보다 명확하고 직관적으로 표시 할 수 있습니다.

  • 사용자 정의 기능을 통해 상수의 URL 도메인 이름을 배치로 대체하여 특정 요구를 충족시킬 수 있습니다.

이러한 방식으로 개발자는 현재 환경의 지속적인 정보를 빠르게 파악할뿐만 아니라 컨텐츠를 편리하게 사용자 정의하여 개발 효율성을 크게 향상시킬 수 있습니다.