현재 위치: > 최신 기사 목록> PHP에서 정의 된 () 함수는 무엇입니까? 상수가 정의되었는지 확인하기 위해 사용하는 방법은 무엇입니까?

PHP에서 정의 된 () 함수는 무엇입니까? 상수가 정의되었는지 확인하기 위해 사용하는 방법은 무엇입니까?

gitbox 2025-08-15

PHP에서 정의 된 () 함수는 상수가 정의되었는지 여부를 확인하는 매우 실용적인 도구입니다. 상수는 정의 후에 변경할 수없는 불변의 값입니다. 변수와 달리 상수는 참조 할 달러 부호 $가 필요하지 않습니다. PHP 프로그램에서 상수는 일반적으로 구성 항목, 데이터베이스 연결 정보 또는 변경되지 않는 기타 값을 저장하는 데 사용됩니다. 정의 된 () 함수를 사용하면 상수를 반복적으로 정의하여 오류를 피하고 프로그램 실행의 안정성을 보장 할 수 있습니다.

정의 된 () 함수의 구문

 <span><span><span class="hljs-title function_ invoke__">defined</span></span><span>(</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$name</span></span><span>): </span><span><span class="hljs-keyword">bool</span></span><span>
</span></span>
  • $ 이름 : 확인할 상수의 이름입니다. 상수 이름은 문자열이어야합니다.

  • 반환 값 : 정의 된 () 상수가 정의 된 경우 true를 반환합니다. 그렇지 않으면 거짓을 반환하십시오.

샘플 코드

Site_name이 일정하고 정의되었는지 확인하고 싶다고 가정하십시오. 코드 예제는 다음과 같습니다.

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// 상수가 정의되어 있는지 확인하십시오</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">defined</span></span><span>(</span><span><span class="hljs-string">'SITE_NAME'</span></span><span>)) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"끊임없는 SITE_NAME 한정된,가치는입니다: "</span></span><span> . SITE_NAME;
} </span><span><span class="hljs-keyword">else</span></span><span> {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"끊임없는 SITE_NAME 한정되지 않은"</span></span><span>;
}

</span><span><span class="hljs-comment">// 定义끊임없는</span></span><span>
</span><span><span class="hljs-title function_ invoke__">define</span></span><span>(</span><span><span class="hljs-string">'SITE_NAME'</span></span><span>, </span><span><span class="hljs-string">'My Awesome Site'</span></span><span>);
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

위의 예에서, 정의 된 ()가 실행 된 경우 상수 사이트 _name은 처음으로 정의되지 않으므로 출력 결과는 "constant site_name이 정의되지 않습니다"입니다. define ()를 사용 하여 나중에 정의하고 정의 된 ()을 다시 실행하면 결과는 "constant site_name 정의, 값은 : 내 멋진 사이트"가됩니다.

상수의 반복적 인 정의를 피하려면 정의 된 ()를 사용하십시오

PHP의 상수는 정의 된 후에는 재정의 할 수 없습니다. 기존 상수를 다시 정의하려고하면 PHP에 오류가 발생합니다. 따라서 정의 된 () 함수를 사용하면 상수를 반복적으로 정의하여 오류를 피할 수 있습니다.

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// 先상수가 정의되어 있는지 확인하십시오</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (!</span><span><span class="hljs-title function_ invoke__">defined</span></span><span>(</span><span><span class="hljs-string">'DB_HOST'</span></span><span>)) {
    </span><span><span class="hljs-title function_ invoke__">define</span></span><span>(</span><span><span class="hljs-string">'DB_HOST'</span></span><span>, </span><span><span class="hljs-string">'localhost'</span></span><span>);
}

</span><span><span class="hljs-keyword">echo</span></span><span> DB_HOST;
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

이 예에서 DB_Host 상수는 아직 정의되지 않은 경우에만 정의됩니다. 이런 식으로, 프로그램이 여러 번 실행 되더라도 상수의 반복 정의로 인해 오류가 발생하지 않습니다.

실제 응용 프로그램에서 정의 된 () 의 목적

  1. 구성 항목 확인 : 구성 파일에서 일반적으로 데이터베이스 연결 정보, 애플리케이션 이름 등을 저장하기 위해 여러 상수 정의합니다.

  2. 충돌을 피하십시오 : 여러 모듈이나 라이브러리를 개발할 때 동일한 이름의 상수를 정의하는 여러 파일이있을 수 있습니다. 정의 된 ()를 사용하여 상수가 이미 존재하는지 확인하면 일정한 이름 충돌로 인한 문제를 방지 할 수 있습니다.

  3. 제어 흐름 : 특정 조건에서 특정 작업을 수행할지 여부를 제어 할 수 있습니다. 상수가 정의되었는지 여부를 확인하여 다른 절차 적 결정을 내릴 수 있습니다.

요약

PHP의 정의 () 함수는 개발자가 상수가 정의되었는지 여부를 확인하여 반복적 인 정의 또는 충돌을 피할 수있는 매우 유용한 도구입니다. 정의 ()를 합리적으로 사용함으로써, 특히 대규모 프로젝트 또는 다중 모전 시스템에서 코드는보다 안정적이고 강력하게 만들 수 있으며, 이는 코드의 유지 관리 및 신뢰성을 효과적으로 향상시킬 수 있습니다.