Summary of PHP development specifications

php中世界最好的语言
Release: 2023-03-26 19:36:02
Original
1324 people have browsed it

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

Source file

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.

Indentation

Use 4 spaces for indentation. IDE can set

Line length

120 characters per line

Keywords

All keywords are lowercase, such as true, false

Naming

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

Code comment tag

Comment classes, methods, and properties in class files, use @param @return @throwns

@param comments to write detailed explanations, such as @param string $username Username

Business module

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     = &#39;不具有权限&#39;;
  const STATUS_EXCEPTION   = 1000002;
  const STATUS_EXCEPTION_MSG = &#39;状态异常&#39;;    
}
Copy after login

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;// 超级管理员
}
Copy after login

where STATUS and AUTH are the data table mapping field names

Api interface output, example

{
  "code" : 0,
  "msg" : "success",
  "data" : {
    "userId" : 100
  }
}
Copy after login

The code and msg are required fields. If data is empty, do not fill it in. Example

{
  "code" : 100001,
  "msg" : "不具有权限"
}
Copy after login

Other

arrays, use when the key is String Single quotes, use a single line when there is only one key, example

$arr = [ &#39;userId&#39; => 100 ];
Copy after login

Use multiple lines when there are multiple keys, example

$arr = [
  'id'    => 100,
  'username' => 'admin',
];
Copy after login

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!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!