如果编写PHP的高可读性代码?

PSR规范
phper如何编写高可读性的代码?我自己总结了日常开发中的一点心得,希望能帮助大家。大概有12点,废话不多说,直接上代码。
1.关键字规范

在这里插入图片描述
2.类名用大驼峰,方法名用小驼峰,变量名用下划线隔开
在这里插入图片描述
3.类属性和方法名
在这里插入图片描述
4.类常量
在这里插入图片描述
5.控制结构书写规范
在这里插入图片描述
6.方法规范
在这里插入图片描述
7.类的实例化
在这里插入图片描述
8.函数和类里面的方法名定义是,左边的大括号必须要独占一行.比如

 <?php
 namespace think\Cache;
 
 use think\Controller;
 
 class UserType
 {
  	public $user_pwd = 'weqw';
     
    public function userEat($id, $username = 'zwl')
    {
      $ni = '231';
      if ($ni === true) {
        return true;
      }
    }
     
     public static function userSleep()
     {
      	$this->userEat();
     }
     
     public function userTalk()
     {
         self::userSleep();
     }
 }

9.常量和env文件
常量用大写加下划线隔开。方法的参数或者函数的参数,如果是两个以上,第二个参数,在前一个参数的逗号,要用空格隔开。比如


protected function assign($name, $value = '')
{
    $this->view->assign($name, $value);
    return $this;
}

10.接口例子
@return 的类型
大概有:json,object,array,void,static(静态变量,return self::$instance),bool,mixed

	/**
     * 递归给上级发放动态奖金
     * @access public
     * @param int $uid 用户id
     * @param mixed $pid 父级id
     * @param array $data 数据
     * @return bool
     * @throws  $e
     * @Author	夜雨闻铃
     */
		public function demo()
		{
			try {
				$post = $this->request->post();
				$fundid = trim($post['id']);
				$passwd = trim($post['dealPass']);

				if (empty($passwd) || strlen($passwd) != 6) {
					return returnJson(Status::FAILED,Lang::get('pwd_error'));
				}
				// 验证交易密码是否正
				$is_true = password_verify($passwd, $this->user['deal_pwd']);
				if (!$is_true) {
					return returnJson(Status::FAILED, Lang::get('pwd_error'));
				}
				Db::startTrans();
				Db::commit();
				return returnJson(Status::SUCCESS,Lang::get('buy_success'));
			} 
			catch (\Exception $e) {
				Db::rollback();
				errorLog($this->action, $e);
				return returnJson(Status::SYSTEM_ERROR, Lang::get('system_error'));
			}
		}

11.函数的书写例子

if (!function_exists('input')) {
    /**
     * 获取输入数据 支持默认值和过滤
     * @param string    $key 获取的变量名
     * @param mixed     $default 默认值
     * @param string    $filter 过滤方法
     * @return mixed
     */
    function input($key = '', $default = null, $filter = '')
    {
       
    }
}

12.代码注释
用//注释代替//注释。下面上代码观看效果。


	/*$post = $this->request->post();
	$fundid = trim($post['id']);
	$passwd = trim($post['dealPass']);
	if (empty($passwd) || strlen($passwd) != 6) {
		return returnJson(Status::FAILED,Lang::get('pwd_error'));
	}*/


	//$post = $this->request->post();
	//$fundid = trim($post['id']);
	//$passwd = trim($post['dealPass']);
	//if (empty($passwd) || strlen($passwd) != 6) {
		//return returnJson(Status::FAILED,Lang::get('pwd_error'));
	//}

还有其他需要改进的编码规范,欢迎指正,一起进步!!!如需转载此原创文章,注明一下我这个原作者即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值