>  기사  >  백엔드 개발  >  PHP에서 상수를 정의하는 방법은 무엇입니까?

PHP에서 상수를 정의하는 방법은 무엇입니까?

青灯夜游
青灯夜游원래의
2022-02-09 18:53:3313310검색

PHP에서 상수를 정의하는 방법: 1. 정의하려면 정의() 함수를 사용하세요. 구문은 "define(상수 이름, 상수 값, 대소문자 구분 여부)"입니다. 2. const 키워드를 사용하여 정의하면 구문은 다음과 같습니다. "const 상수 이름 = 상수 값;". : 이 튜토리얼의 작업 환경: Windows7 시스템, PHP7.1 버전, Dell G3 컴퓨터

Php 방법 PHP에서 상수를 정의하는 방법은 무엇입니까?

Define () 함수

    Const 키워드
  • 변수와 비교하여 상수는 다음 특징:
  • 상수 앞에 달러 기호($)가 없습니다.

    상수는 정의() 및 const로만 정의할 수 있습니다.
  • 상수 범위는 전역입니다.
  • 한번 정의된 상수는 다시 정의하거나 정의 취소할 수 없습니다.

  • define() 함수는 상수를 정의합니다

  • 적법한 상수 이름은 문자와 밑줄로만 시작할 수 있으며 그 뒤에는 문자, 숫자 또는 모든 길이의 밑줄이 올 수 있습니다. PHP에서는 정의() 함수를 통해 상수를 정의할 수 있습니다. 정의() 함수의 구문은 다음과 같습니다.

    define($name, $value , $case_insensitive)

$name 필수 매개변수, 상수 이름(큰따옴표나 작은따옴표로 묶어야 함) quote)

$ 값은 필수 매개변수이며, 상수

  • $case_insensitive 선택적 매개변수의 값은 대소문자 구분 여부를 지정하며, 기본값은 대소문자 구분, true로 설정하면 대소문자 구분 없음을 의미합니다

  • <?php
    header("Content-type:text/html;charset=utf-8");
    define(&#39;WebSite&#39;, &#39;php中文网&#39;);
    echo WebSite.&#39;<br>&#39;;
    ?>
  • const 키워드는 상수를 정의합니다.

  • 구문:
const 常量名 = 常量值;

예: PHP에서 상수를 정의하는 방법은 무엇입니까?

<?php
const FOO = &#39;BAR&#39;;
echo FOO.&#39;<br>&#39;;
?>

define()과 const 차이점:

const는 컴파일 시간에 상수를 정의합니다. , 정의하는 동안 () 메서드는 런타임에 있습니다. 상수를 정의합니다.

const는 if 문에서 사용할 수 없으며 defne()은 if 문에서 사용할 수 있습니다. PHP에서 상수를 정의하는 방법은 무엇입니까?

if(...) {
    const FOO = &#39;BAR&#39;;//错误
}
if(...) {
    define(&#39;FOO&#39;, &#39;BAR&#39;);//正确
}

define()의 일반적인 시나리오는 상수를 정의하기 전에 먼저 상수가 정의되었는지 여부를 확인하는 것입니다.

if(defined(&#39;FOO)) {
    define(&#39;FOO&#39;, &#39;BAR&#39;)
}
const 상수를 정의할 때 값은 정적 스칼라(숫자, 문자열, true, false)만 될 수 있습니다. , null) 및 정의 () 메소드는 모든 표현식의 값을 상수 값으로 사용할 수 있습니다. PHP 5.6부터 const를 사용하면 표현식을 상수 값으로 사용할 수도 있습니다.
const BIT_5 = 1 << 5; //PHP5.6后支持,之前的PHP版本不支持
define(&#39;BIT_5&#39;, 1 << 5);// 所有PHP版本都支持const 只允许简单的常量名,而define()可以把任何表达式的值用作常量名
for ($i = 0; $i < 32; $i++) {
    define(&#39;BIT_&#39; . $i, 1 << $i);
}

const로 정의된 상수 이름은 대소문자를 구분하며, 대소문자를 구분하지 않는 상수는 정의() 메서드의 세 번째 매개변수에 true를 전달하여 정의할 수 있습니다.

define(&#39;FOO&#39;, &#39;BAR&#39;, true);
echo FOO; //BAR
echo foo; //BAR

위에 나열된 내용은 정의()에 비해 const의 몇 가지 단점이나 유연성이 없습니다. (define() 대신 const를 사용하지 않는 한) 상수를 정의하기 위해 개인적으로 정의() 대신 const를 사용하는 것을 권장하는 이유를 살펴보겠습니다. ) (위 목록에서 const를 사용하지 않는 한) 장면에 정의된 상수입니다.

const는 가독성이 더 좋고, const는 함수가 아닌 언어 구조이며, 클래스에서 클래스 상수를 정의하는 형식과 일치합니다.

const는 현재 네임스페이스의 상수를 정의하며, 정의()는 비슷한 효과를 얻으려면 정의할 때 전체 네임스페이스 이름을 전달해야 합니다.

namespace A\B\C;
//To define the constant A\B\C\FOO:
const FOO = &#39;BAR&#39;;
define(&#39;A\B\C\FOO&#39;, &#39;BAR&#39;);

권장 학습: "

PHP 비디오 튜토리얼

"

위 내용은 PHP에서 상수를 정의하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.