현재 위치: > 최신 기사 목록> 모든 상수 값을 형식화하는 가장 좋은 방법

모든 상수 값을 형식화하는 가장 좋은 방법

M66 2025-05-18

PHP에서 상수는 수정되지 않을 식별자이며 일반적으로 프로그램 실행 중에 변경되지 않은 값을 유지하는 데 사용됩니다. 디버깅 또는 학습 목적을 위해서는 때때로 현재 스크립트에 정의 된 모든 상수를 볼 필요가 있습니다. 다행히도 PHP는 내장 기능 get_defined_constants () 를 제공하여 사용 가능한 모든 상수에 대한 정보를 한 번에 얻을 수 있습니다.

이 기사는 get_defined_constants () 함수를 사용하는 방법을 소개하고 가독성과 실용성을 향상시키기 위해 명확하고 구성된 형식으로 상수 값을 출력하는 방법을 설명합니다.

1. 기능 소개

get_defined_constants ([bool $ categorize = false]) : 배열

이 함수는 정의 된 모든 상수 이름과 해당 값을 포함하는 배열을 반환합니다.

  • 인수가 전달되지 않으면 (또는 false), 상수 이름으로 평평한 배열이 키로 반환되고 값은 일정한 값입니다.

  • True가 통과되면 반환 된 2D 어레이는 코어 , PCRE , 사용자 등과 같은 상수의 "모듈"에 따라 분류됩니다.

2. 모든 상수를 출력하십시오

다음은 모든 상수를 얻고 표 형식으로 인쇄하는 방법을 보여주는 간단한 예입니다.

 <?php
$constants = get_defined_constants(true);

// 사용자 정의 상수 만
$userConstants = $constants['user'];

echo "<table border='1' cellpadding='5' cellspacing='0'>";
echo "<thead><tr><th>상수 이름</th><th>일정한 가치</th></tr></thead><tbody>";

foreach ($userConstants as $name => $value) {
    echo "<tr><td>{$name}</td><td>" . htmlspecialchars(print_r($value, true)) . "</td></tr>";
}

echo "</tbody></table>";
?>

이 예에서는 사용자 범주에서 상수 만 추출합니다. 즉, 정의 () 또는 const 키워드를 통해 스크립트의 프로그래머가 수동으로 정의한 상수. 출력 컨텐츠는 웹 페이지에서 쉽게 볼 수있는 표준 HTML 테이블입니다.

3. 모든 분류 상수를 형식화하십시오

모든 카테고리에서 상수를보고 결과를 그룹으로 표시하려면 다음 코드를 사용할 수 있습니다.

 <?php
$constants = get_defined_constants(true);

foreach ($constants as $category => $constGroup) {
    echo "<h2>분류:{$category}</h2>";
    echo "<table border='1' cellpadding='5' cellspacing='0'>";
    echo "<thead><tr><th>상수 이름</th><th>일정한 가치</th></tr></thead><tbody>";

    foreach ($constGroup as $name => $value) {
        echo "<tr><td>{$name}</td><td>" . htmlspecialchars(print_r($value, true)) . "</td></tr>";
    }

    echo "</tbody></table><br>";
}
?>

이러한 방식으로, 각 상수 카테고리는 코어, PCRE, 사용자, 컬 및 기타 모듈과 같이 별도로 표시되며, 이는 PHP 운영 환경에서 미리 정의 된 상수에 대한 깊은 이해에 매우 적합합니다.

4. 상수 정보를 JSON에게 내보내십시오

JavaScript 또는 로깅 시스템과 같은 다른 시스템에서 쉽게 사용할 수 있도록 기계 판독 가능한 형태로 상수를 내보내려면 JSON으로 변환 할 수 있습니다.

 <?php
header('Content-Type: application/json');
echo json_encode(get_defined_constants(true), JSON_PRETTY_PRINT);
?>

이렇게하면 출력 컨텐츠 구조가 명확하고 원격 디버깅 또는 시스템 통합에 적합합니다.

5. 원격 로그 서버에 URL 출력과 결합

로깅 (예 : http://m66.net/log.php)을 위해 사용자 정의 상수 값을 원격 서버로 보내려면 다음을 수행 할 수 있습니다.

 <?php
$userConstants = get_defined_constants(true)['user'];
$data = json_encode($userConstants);

// 원격 서버로 전송하십시오
$url = "http://m66.net/log.php";
$options = [
    'http' => [
        'method'  => 'POST',
        'header'  => "Content-Type: application/json\r\n",
        'content' => $data,
    ],
];
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
?>

이 방법은 도구를 디버깅, API 추적 또는 검증 스크립트 배포하는 데 사용할 수 있습니다.

6. 요약

get_defined_constants ()는 시스템과 사용자에 의해 정의 된 모든 상수를 신속하게 얻는 데 도움이 될뿐만 아니라 다양한 형식으로 출력하고 처리하는 강력한 기능입니다. 웹 디스플레이, 로깅 또는 원격 통화에 관계없이 실제 시나리오와 함께 유연하게 사용하면 개발 효율성과 시스템 관찰 가능성이 크게 향상 될 수 있습니다.

이 기능을 마스터하는 것은 PHP 런타임 세계에서 창을 여는 것과 같습니다.