This time I will bring you PHP Development Specifications Summary, what are the precautions of PHP development specifications, the following is a practical case, let’s take a look.
Basic convention
The code starts with
The file format must be BOM-free UTF- 8 Format
A file only declares one type. For example, class and interface cannot be mixed in one source file.
Use 4 spaces for indentation. IDE can set
120 characters per line
All keywords are lowercase, such as true, false
The class name is in big camel case, such as UserModel
The class method is named in small camel case, such as getUserId()
The function uses a combination of lowercase letters plus _ , such as get_cookie()
Variable nameUse small camel case method, such as $userId
Constant definition is a combination of uppercase letters plus _, such as IS_DEBUG
Comment classes, methods, and properties in class files, use @param @return @throwns
@param comments to write detailed explanations, such as @param string $username Username
The route is composed of lowercase letters plus _, such as /api/get_user_info
The View layer is responsible for data display
Controller The layer is responsible for input parameter verification, the outermost layer catches exceptions, calls the Logic and View layers
The Logic layer is responsible for specific business logic, calls the Model layer, and returns the processing data
The Model layer is responsible for the data table Query and association
Exception classes need to distinguish functions, such as ParamException means parameter error, UserException means custom exception
Exceptions need to be classified and defined code, use PHP class constants instead, such as
<?php namespace app\exceptions\codes; class UserExceptionCode extends BaseExceptionCode { const NO_AUTH = 1000001; const NO_AUTH_MSG = '不具有权限'; const STATUS_EXCEPTION = 1000002; const STATUS_EXCEPTION_MSG = '状态异常'; }
If the data table file has an Enum type, use PHP class constants instead, such as
<?php namespace app\enums; class UserEnum extends BaseEnum { const STATUS_DELETED = -1;// 已删除 const STATUS_DISABLE = 0;// 禁用 const STATUS_ENABLE = 1;// 正常 const AUTH_GUEST = 1;// 匿名用户 const AUTH_GENERAL_ADMIN = 2;// 普通管理员 const AUTH_SUPER_ADMIN = 3;// 超级管理员 }
where STATUS and AUTH are the data table mapping field names
Api interface output, example
{ "code" : 0, "msg" : "success", "data" : { "userId" : 100 } }
The code and msg are required fields. If data is empty, do not fill it in. Example
{ "code" : 100001, "msg" : "不具有权限" }
arrays, use when the key is String Single quotes, use a single line when there is only one key, example
$arr = [ 'userId' => 100 ];
Use multiple lines when there are multiple keys, example
$arr = [ 'id' => 100, 'username' => 'admin', ];
Use single quotes for strings'
I believe you have read this article You have mastered the case method. For more exciting information, please pay attention to other related articles on the PHP Chinese website!
Recommended reading:
Summary of PHP source code encryption method
How to implement PHP to delete folders under fixed paths and document
The above is the detailed content of Summary of PHP development specifications. For more information, please follow other related articles on the PHP Chinese website!