>  기사  >  백엔드 개발  >  PHP 상수를 값이 변경되는 표현식으로 정의할 수 있는 이유는 무엇입니까?

PHP 상수를 값이 변경되는 표현식으로 정의할 수 있는 이유는 무엇입니까?

WBOY
WBOY원래의
2016-10-10 11:55:561041검색

공식 PHP 매뉴얼에는 "한번 정의된 상수는 변경하거나 정의 해제할 수 없습니다."라고 나와 있습니다.

그런데 왜 이런 값의 변화를 프로그램에서 정의할 수 있을까요?

<code>define("MESSAGE", time());

//输出常量
echo MESSAGE;</code>

답글 내용:

공식 PHP 매뉴얼에는 "한번 정의된 상수는 변경하거나 정의 해제할 수 없습니다."라고 나와 있습니다.

그런데 왜 이런 값의 변화를 프로그램에서 정의할 수 있을까요?

<code>define("MESSAGE", time());

//输出常量
echo MESSAGE;</code>

문법적으로는 아무런 문제가 없습니다. 매뉴얼에 언급된 변경 사항은 취소를 포함한 이후의 인위적인 변경 사항을 강조합니다.

여기서 표현하려는 MESSAGE는 변수인데, 이는 PHP 자체가 연산 중에 메모리에서 time()을 찾은 결과로 이해될 수 있습니다.

이건 함수형 프로그래밍과 관련이 있는 것 같아요. time() 함수는 상수에 할당될 수 있습니다. 상수에 액세스하는 것은 time() 함수에 액세스하는 것과 동일하며, time() 함수의 반환 값은 지속적으로 변경됩니다.

상수는 한번 정의되면 변경하거나 정의 취소할 수 없습니다

그런 다음 MESSAGE를 변경해 보세요.
예: MESSAGE += 1;

time() 함수와 연결되는 느낌이에요!

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