차이점: 1. const는 클래스 멤버 변수 정의에 사용되는 반면, Define은 클래스 멤버 변수 정의에 사용할 수 없습니다. 2. const는 정적 스칼라만 허용하는 반면, Define은 모든 표현식을 사용할 수 있습니다. 상수의 크기 쓰기를 구분하지만 정의는 세 번째 매개변수를 통해 대소문자 구분 여부를 지정할 수 있습니다.
상수는 기본적으로 대소문자를 구분합니다. 일반적으로 상수 식별자는 항상 대문자입니다.
define()
函数来定义常量,在php5.3.0之后,可以使用const
키워드를 사용하여 클래스 정의 외부에서 상수를 정의할 수 있습니다. 이전 버전에서는 const 키워드를 클래스에서만 사용할 수 있습니다.
상수에는 스칼라 데이터(부울, 정수, 부동 소수점, 문자열)만 포함될 수 있습니다. 리소스 상수를 정의할 수 있지만 피해야 합니다.
상수 정의
define("PI", 3.14); echo PI; // 3.14 echo pi; // 输出 "pi" 并发出一个Warning信息 // 以下代码在 PHP 5.3.0 后可以正常工作 const RATE = 'Hello World'; echo RATE;
PHP에서 상수를 정의할 때 const와 정의의 차이점은
1. Const 자체는 언어 구조이고 정의는 함수입니다.
2. Const는 컴파일 중에 정의하는 것보다 훨씬 빠릅니다.
3. Const는 클래스 멤버 변수 정의에 사용되지만, Define은 클래스 멤버 변수 정의에 사용할 수 없습니다.
4.
if (...){ const FOO = 'BAR'; // 无效的 } if (...) { define('FOO', 'BAR'); // 有效的 }
5. const는 정적 스칼라만 허용하고, 정의는 모든 표현식을 사용할 수 있습니다.
const BIT_5 = 1 << 5; // 无效的 define('BIT_5', 1 << 5); // 有效的
6. const는 상수를 정의할 때 대소문자를 구분하지만, 정의는 세 번째 매개변수를 통해 대소문자를 지정할 수 있습니다(true는 대소문자를 구분하지 않음을 의미함). ?
define('FOO', 'BAR', true); echo FOO; // BAR echo foo; // BAR
동적 상수 이름
상수 이름이 동적이면 상수() 함수를 사용하여 상수 값을 가져올 수도 있습니다. 정의된 모든 상수 목록을 얻으려면 get_define_contstants()를 사용하세요.
define('PI',3.14); $chang = 'PI'; echo $chang,'<br/>'; // PI echo constant($chang); // 3.14
define — 특정 이름을 가진 상수가 존재하는지 확인하세요.
// 真实开发一般是这样的 if(!defined('HEI')){ define('HEI',8846); }
추천 관련 튜토리얼: "PHP Tutorial"
위 내용은 PHP에서 정의와 const의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!