개발 과정에서는 다음과 같은 이름 지정 규칙을 따라야 합니다:
클래스 파일에는 모두 .class.php라는 접미사가 붙습니다. (이것은 ThinkPHP에서 내부적으로 사용하는 클래스 라이브러리 파일을 의미하며, 외부에서 로드된 클래스 라이브러리 파일), 카멜 표기법 이름을 사용하고 첫 번째 문자는 DbMysql.class.php
와 같이 대문자로 표시됩니다. DbMysql.class.php
;
类的命名空间地址和所在的路径地址一致,例如 HomeControllerUserController
类所在的路径应该是 Application/Home/Controller/UserController.class.php
;
确保文件的命名和调用大小写一致,是由于在类Unix系统上面,对大小写是敏感的(而ThinkPHP在调试模式下面,即使在Windows平台也会严格检查大小写);
类名和文件名一致(包括上面说的大小写一致),例如 UserController
类的文件命名是UserController.class.php
, InfoModel类的文件名是InfoModel.class.php
, 并且不同的类库的类命名有一定的规范;
函数、配置文件等其他类库文件之外的一般是以.php
为后缀(第三方引入的不做要求);
函数的命名使用小写字母和下划线的方式,例如 get_client_ip
;
方法的命名使用驼峰法,并且首字母小写或者使用下划线“_”,例如 getUserName
,_parseType
,通常下划线开头的方法属于私有方法;
属性的命名使用驼峰法,并且首字母小写或者使用下划线“_”,例如 tableName
、_instance
,通常下划线开头的属性属于私有属性;
以双下划线“__”打头的函数或方法作为魔法方法,例如 __call
和 __autoload
;
常量以大写字母和下划线命名,例如 HAS_ONE
和 MANY_TO_MANY
;
配置参数以大写字母和下划线命名,例如HTML_CACHE_ON
;
语言变量以大写字母和下划线命名,例如MY_LANG
,以下划线打头的语言变量通常用于系统语言变量,例如 _CLASS_NOT_EXIST_
;
对变量的命名没有强制的规范,可以根据团队规范来进行;
ThinkPHP的模板文件默认是以.html
为后缀(可以通过配置修改);
数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如 think_user
表和 user_name
字段是正确写法,类似 _username
클래스의 네임스페이스 주소는 HomeControllerUserController
클래스가 있는 경로는 Application/Home/Controller/UserController.class.php
여야 합니다.
UserController
클래스의 파일 이름은 UserController.class.php
이고 파일 이름은 InfoModel 클래스는 InfoModel.class.php
이며 서로 다릅니다. 클래스 라이브러리에는 클래스 이름 지정에 대한 특정 표준이 있습니다.
함수, 구성 파일 및 기타 클래스 라이브러리 파일에는 일반적으로 접미사가 붙습니다. .php
사용(제3자가 도입한 것은 필수가 아님)
get_client_ip
과 같이 소문자와 밑줄이 사용됩니다. 메소드 이름 지정은 낙타 표기법을 사용하고 첫 문자는 소문자 또는 밑줄 "_"입니다(예: getUserName
, _parseType
). 일반적으로 밑줄로 시작하는 메소드는 비공개 메소드입니다.
속성은 카멜 표기법을 사용하여 이름이 지정되며 첫 글자는 소문자이거나 밑줄이 그어져 있습니다." _"(예:
tableName
, _instance
)는 일반적으로 밑줄은 비공개 속성입니다. __call
및
__autoload
와 같은 마법 메서드로 사용됩니다. 상수 이름은 대문자와 밑줄로 지정됩니다(예:
HAS_ONE
및 MANY_TO_MANY
). 구성 매개변수 이름은 대문자로 지정됩니다. HTML_CACHE_ON
과 같은 문자 및 밑줄 MY_LANG
). 밑줄로 시작하는 언어 변수는 일반적으로 🎜 _CLASS_NOT_EXIST_
와 같은 시스템 언어 변수 🎜🎜🎜🎜🎜 변수 이름 지정에 대한 필수 사양은 없으며 팀 사양을 따를 수 있습니다. 🎜🎜🎜🎜PHP의 템플릿 파일 기본값은 입니다. >.html
🎜 접미사(구성을 통해 수정 가능) 🎜🎜🎜🎜🎜데이터 테이블과 필드의 이름은 소문자로 지정되고 밑줄이 그어집니다. 예를 들어 필드 이름은 밑줄로 시작하지 않습니다. , 🎜 think_user
🎜 테이블과 🎜 user_name
필드가 올바르게 작성되었습니다. 이는 🎜 _username
🎜과 같은 데이터 테이블과 유사하게 필드가 필터링될 수 있습니다. 🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜프로세스 명령문 사양🎜🎜🎜🎜🎜모든 프로세스 명령문의 중괄호는 별도의 줄을 차지합니다. 이유: 더 복잡한 비즈니스 로직을 접하게 되면 중괄호가 많이 중첩되므로 해당 중괄호를 혼동하게 됩니다! 🎜🎜🎜🎜1. Branch 문🎜🎜if($age >= 18 && $age <= 30) { echo 'young man'; } else if($age > 30 && $age <= 60) { echo 'middle aged'; } else { echo 'old man'; } //下面这段代码高手我们一个问题,在if语句中,即使在可以不要花括号的情况下,花括号也是要写上的 if($age > 60) { echo 'I am very old'; } switch($status) { case 'forbiden': echo 'login forbidden'; break; case 'normal': echo 'login in'; break; default: echo 'status is wrong' : break; }🎜🎜2. Loop 문🎜🎜
while($condition) { statesments......; } foreach($arrayList as $arrayKey => $arrayItem) { states......; } do { statements......; } while($condition) for($start; condition; changenumber) { statements......; }🎜일반적으로 규칙을 따라야 합니다🎜🎜개발 과정에서 다음 규칙을 따르면 개발이 더 쉬워집니다. 프레임워크의 명명 규칙과 디렉터리 규칙을 따르세요. 🎜🎜🎜🎜 문제를 조기에 발견하려면 개발 과정에서 디버깅 모드를 켜보세요. 🎜🎜🎜🎜 입력 변수를 얻기 위해 I 함수를 사용하는 좋은 습관을 기르세요. 🎜🎜🎜업데이트 또는 환경 변경 후 문제가 발생할 때 가장 먼저 발생하는 문제는 런타임 디렉터리를 지우는 것입니다. 🎜🎜🎜
위 내용은 PHP 코드 및 파일 명명 규칙 분석 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!