PHP常量使用的几个需要注意的地方_PHP教程
为什么要谨慎使用PHP中的常量?
Zend Framework文档中写道:常量包含数字字母字符和下划线,数字允许作为常量名。 常量名的所有字母必须大写。类常量必须通过 "const" 定义为类的成员,强烈不鼓励使用 "define" 定义的全局常量。
作为PHP的官方框架,为什么会有这样的要求?
让我们一起分析一下吧。
1. define容易产生意想不到的错误
PHP常量是定义后就不能修改和再次赋值。但是如果再次赋值会怎么样?
<?php define('C', 12345); define('C', 123); ?>
这段代码会报个notice错误。带来的后果是:在你定义之前,其它人要是定义了同名的常量,你可能真的不知道里面究竟是什么值。
2. 如何判断PHP常量是否被定义?判断方法易写错
<?php define('C', 12345); // 错误方法1,经常犯 if (isset(C)){……} // 错误方法2,经常犯 if (defined(C)){……} // 正确方法 if (defined('C')){……} ?>
3. 执行效率低
<?php define('FORUM_THEME',$forum['theme']); $this->display('/'.FORUM_THEME.'@Public:login'); // 系统会从整个执行流程中查找FORUM_THEME ?>
因为php处理常量的时候要进行多次查找,所以效率低。
总结:PHP常量的问题,在于PHP处理常量的方法过于宽松导致的,如果能够严格一些,就会避免很多的问题。在实际过程,能用变量就不要用常量,因为变量的效率高使用更加方便。
因此若非要使用常量或者类变量,可使用以下方法:
<?php class foo { const WEBSITE = "www.zhuyinghao.com"; protected $_forum_theme; function name() { echo WEBSITE; $this->_forum_theme = $forum['theme']; } function displace() { echo $this->_forum_theme; } } ?>
类名和函数名相同时的作用
在PHP 4中,类的构造函数需要和类名相同,子类的构造函数名与子类名相同,在子类里父类的构造函数不会自动执行。要在子类里执行父类的构造函数,必须执行类似以下语句:
$this->[父类的构造函数名()]
在 PHP 5.0 以上版本里,统一使用construct()作为构造函数,但仍兼容了 4.0 版本的构造函数的定义规则。如果同时定义了4.0的构造函数和 construct()函数,则construct() 函数优先。
用PHP EOL来替换/r/n进行换行
写程序时会经常用到换行,用PHP内置常量PHP_EOL来进行换行。
一个小小的换行,在不同的平台有着不同的实现。在unix世界换行就用\n来代替,但是windows为了体现他的不同,就用\r\n,更有意思的是在mac中用\r。因此unix系列用 \n,windows系列用 \r\n,mac用 \r。
因此系统会根据平台系统的不同,转换成不同的换行。如果要在浏览器中换行,就要使用PHP_EOL变量进行换行

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











상수는 변수라고도 하며 일단 정의되면 프로그램이 실행되는 동안 그 값이 변경되지 않습니다. 따라서 변수를 고정된 값을 참조하는 상수로 선언할 수 있습니다. 텍스트라고도 합니다. 상수는 Const 키워드를 사용하여 정의해야 합니다. 구문 C 프로그래밍 언어에서 사용되는 상수의 구문은 다음과 같습니다. - consttypeVariableName; (또는) consttype*VariableName; 다양한 유형의 상수 C 프로그래밍 언어에서 사용되는 다양한 유형의 상수는 다음과 같습니다. 정수 상수 - 예: 1,0 ,34, 4567 부동 소수점 상수 - 예: 0.0, 156.89, 23.456 8진수 및 16진수 상수 - 예: 16진수: 0x2a, 0xaa.. 8진수

상수와 변수는 프로그래밍에서 데이터 값을 저장하는 데 사용됩니다. 변수는 일반적으로 시간이 지남에 따라 변경될 수 있는 값을 나타냅니다. 상수는 프로그램 실행 중에 값을 변경할 수 없는 변수 유형입니다. Python에서 사용할 수 있는 내장 상수는 6개뿐입니다. 이는 False, True, None, NotImplemented, Ellipsis(...) 및 __debug__입니다. 이러한 상수 외에도 Python에는 상수 값을 저장하는 내장 데이터 유형이 없습니다. 예 상수의 예는 아래에 설명되어 있습니다. False=100 출력 SyntaxError:cannotsigntoFalseFalse는 부울 값을 저장하는 데 사용되는 Python의 내장 상수입니다.

상수 변수는 값이 고정되어 있고 프로그램에 단 하나의 복사본만 존재하는 변수입니다. 상수 변수를 선언하고 값을 할당하면 프로그램 전체에서 해당 값을 다시 변경할 수 없습니다. 다른 언어와 달리 Java는 상수를 직접 지원하지 않습니다. 그러나 변수를 static 및 final로 선언하여 상수를 생성할 수 있습니다. 정적 - 정적 변수를 선언하면 컴파일 타임에 메모리에 로드됩니다. 즉, 하나의 복사본만 사용할 수 있습니다. 최종 - 최종 변수를 선언한 후에는 해당 값을 수정할 수 없습니다. 따라서 인스턴스 변수를 static 및 final로 선언하여 Java에서 상수를 생성할 수 있습니다. 예시 데모 classData{&am

PHP는 웹 개발에 널리 사용되는 서버측 스크립팅 언어로, 유연성과 사용 용이성으로 인해 많은 개발자가 가장 먼저 선택합니다. 그러나 PHP를 사용할 때 가끔 오류 보고서가 표시되는 경우가 있습니다. 이 문서에서는 "정의되지 않은 상수 호출" 오류와 이 문제를 해결하는 방법에 중점을 둘 것입니다. 1. 문제 설명 코드에서 정의되지 않은 상수를 사용하면 PHP는 정의되지 않은 상수를 호출하라는 치명적인 오류를 발생시킵니다. 일반적인 예는 다음과 같습니다. echoMY_

PHP 오류: 정의되지 않은 상수를 속성 이름으로 사용하는 경우 어떻게 해야 합니까? PHP 개발에서는 클래스와 객체를 사용하여 코드를 구성하고 관리하는 경우가 많습니다. 클래스를 정의하는 과정에서 클래스의 속성(즉, 멤버 변수)은 데이터를 저장하는 데 중요한 역할을 합니다. 그런데 속성을 사용할 때 정의되지 않은 상수를 속성명으로 사용하면 오류가 발생하는 경우가 있습니다. 이 문서에서는 이 오류의 원인을 설명하고 몇 가지 해결 방법을 제공합니다. 먼저 이 문제를 설명하는 간단한 예를 살펴보겠습니다. "Per"라는 파일이 있다고 가정합니다.

기본 데이터형 상수의 정의와 초기화 방법을 익히기 위해서는 구체적인 코드 예제가 필요합니다. 프로그래밍에서는 정수형, 부동소수점형, 문자형 등 다양한 기본 데이터형이 사용되는 경우가 많습니다. 이러한 데이터 유형을 사용할 때는 정의와 사용법뿐만 아니라 상수를 정의하고 초기화하는 방법도 이해해야 합니다. 이 기사에서는 기본 데이터 유형 상수의 정의 및 초기화 방법을 소개하고 구체적인 코드 예제를 제공합니다. 정수 상수 정의 및 초기화 방법 정수 상수에는 int, long, short, byt가 있습니다.

FILTER_SANITIZE_SPECIAL_CHARS 상수는 HTML 이스케이프 특수 문자를 필터링합니다. 플래그 FILTER_FLAG_STRIP_LOW - 32보다 작은 ASCII 값으로 문자를 제거합니다. FILTER_FLAG_STRIP_HIGH - 32보다 큰 ASCII 값으로 문자를 제거합니다. FILTER_FLAG_ENCODE_HIGH - 32보다 큰 ASCII 값으로 문자를 인코딩합니다. 반환 값 FILTER_SANITIZE_SPECIAL_CHARS 상수는 아무 작업도 수행하지 않습니다. 예제 데모&

PHP의 명명 규칙: 밑줄 명명법을 사용하여 상수 및 파일 이름의 이름을 지정하는 방법 PHP 프로그래밍에서 좋은 명명 규칙은 코드의 가독성과 유지 관리성을 향상시키는 데 매우 중요합니다. 이 기사에서는 밑줄 명명법을 사용하여 상수 및 파일 이름의 이름을 지정하는 방법을 소개하고 코드 예제를 통해 이를 보여줍니다. 상수 명명 규칙 PHP에서 상수는 일반적으로 모두 대문자로 명명되며 단어는 밑줄로 구분됩니다. 이 명명 규칙은 상수와 변수를 명확하게 구분하며 읽고 이해하기 쉽습니다. 다음은 몇 가지 일반적인 상수 이름 지정 예입니다.
