<?php
  /**
  * 符合psr-1,2的编程实例
  *
  * @author 作者 描述
  */
   
  namespace Standard; // 顶部命名空间
  // 空一行
  use Test\TestClass;//use引入类
   
  /**
  * 类描述
  *
  * 类名必须大写开头驼峰.
  */
  abstract class StandardExample // {}必须换行
  {
    /**
    * 常量描述.
    *
    * @var string
    */
    const THIS_IS_A_CONST = ''; // 常量全部大写下划线分割
   
    /**
    * 属性描述.
    *
    * @var string
    */
    public $nameTest = ''; // 属性名称建议开头小写驼峰
    // 成员属性必须添加public(不能省略), private, protected修饰符
   
    /**
    * 属性描述.
    *
    * @var string
    */
    private $_privateNameTest = ''; // 类私有成员属性,【个人建议】下划线小写开头驼峰
   
    /**
    * 构造函数.
    *
    * 构造函数描述
    *
    * @param string $value 形参名称/描述
    */
    public function __construct($value = '')// 成员方法必须添加public(不能省略), private, protected修饰符
    {// {}必须换行
   
      $this->nameTest = new TestClass();
   
      // 链式操作
      $this->nameTest->functionOne()
              ->functionTwo()
              ->functionThree();
   
      // 一段代码逻辑执行完毕 换行
      // code...
    }
   
    /**
    * 成员方法名称.
    *
    * 成员方法描述
    *
    * @param string $value 形参名称/描述
    *
    * @return 返回值类型 返回值描述
    * 返回值类型:string,array,object,mixed(多种,不确定的),void(无返回值)
    */
    public function testFunction($value = '')// 成员方法必须小写开头驼峰
    {
      // code...
    }
   
    /**
    * 成员方法名称.
    *
    * 成员方法描述
    *
    * @param string $value 形参名称/描述
    *
    * @return 返回值类型 返回值描述
    */
    private function _privateTestFunction($value = '')// 私有成员方法【个人建议】下划线小写开头驼峰
    {
      // code...
    }
   
    /**
    * 成员方法名称.
    *
    * 成员方法描述
    *
    * @param string $value 形参名称/描述
    *
    * @return 返回值类型 返回值描述
    */
    public static function staticFunction($value = '')// static位于修饰符之后
    {
      // code...
    }
   
    /**
    * 成员方法名称.
    *
    * 成员方法描述
    *
    * @param string $value 形参名称/描述
    *
    * @return 返回值类型 返回值描述
    */
    abstract public function abstractFunction($value = ''); // abstract位于修饰符之前
   
    /**
    * 成员方法名称.
    *
    * 成员方法描述
    *
    * @param string $value 形参名称/描述
    *
    * @return 返回值类型 返回值描述
    */
    final public function finalFunction($value = '')// final位于修饰符之前
    {
      // code...
    }
   
    /**
    * 成员方法名称.
    *
    * 成员方法描述
    *
    * @param string $valueOne 形参名称/描述
    * @param string $valueTwo 形参名称/描述
    * @param string $valueThree 形参名称/描述
    * @param string $valueFour 形参名称/描述
    * @param string $valueFive 形参名称/描述
    * @param string $valueSix 形参名称/描述
    *
    * @return 返回值类型 返回值描述
    */
    public function tooLangFunction(
      $valueOne = '', // 变量命名可小写开头驼峰或者下划线命名,个人那习惯,据说下划线可读性好
      $valueTwo = '',
      $valueThree = '',
      $valueFour = '',
      $valueFive = '',
      $valueSix = '')// 参数过多换行
    {
      if ($valueOne === $valueTwo) {// 控制结构=>后加空格,同{一行,(右边和)左边不加空格
        // code...
      }
   
      switch ($valueThree) {
        case 'value':
          // code...
          break;
   
        default:
          // code...
          break;
      }
   
      do {
        // code...
      } while ($valueFour <= 10);
   
      while ($valueFive <= 10) {
        // code...
      }
   
      for ($i = 0; $i < $valueSix; $i++) {
        // code...
      }
    }
  }

PHP编码规范实例的更多相关文章

  1. Objective-C开发编码规范【转载】

    概要 Objective-C是一门面向对象的动态编程语言,主要用于编写iOS和Mac应用程序.关于Objective-C的编码规范,苹果和谷歌都已经有很好的总结: Apple Coding Guide ...

  2. 【转】JavaScript 风格指南/编码规范(Airbnb公司版)

    原文转自:http://blog.jobbole.com/79484/ Airbnb 是一家位于美国旧金山的公司,本文是其内部的 JavaScript 风格指南/编码规范,在 Github 上有 11 ...

  3. 资料推荐--Google Java编码规范

    之前已经推荐过Google的Java编码规范英文版了: http://google-styleguide.googlecode.com/svn/trunk/javaguide.html 虽然这篇文章的 ...

  4. 【转】Airbnb React编码规范

    Airbnb的编码规范是在业界非常流行的一套规范,而且它一直都在进化,推出最新技术的规范 原文:https://zhuanlan.zhihu.com/p/20616464 用更合理的方式书写React ...

  5. Python + OpenCV2 系列:3 - python 字符串,类,编码规范

    首先,强烈推荐<<简明 Python 教程>> Swaroop, C. H. 著 沈洁元 译 其实,这本书里已经把python的最基本的用法,编码等等介绍的很好,这里把我用到的 ...

  6. Bootstrap编码规范

    黄金定律 永远遵循同一套编码规范 -- 可以是这里列出的,也可以是你自己总结的.如果你发现本规范中有任何错误,敬请指正.通过 open an issue on GitHub为本规范添加或贡献内容. 不 ...

  7. iOS 注释的5要3不要和编码规范的26个方面

    注释 代码注释,可以说是比代码本身更重要.这里有一些方法可以确保你写在代码中的注释是友好的: 不要重复阅读者已经知道的内容 能明确说明代码是做什么的注释对我们是没有帮助的. // If the col ...

  8. [iOS翻译]Cocoa编码规范

        简介: 本文整理自Apple文档<Coding Guidelines for Cocoa>.这份文档原意是给Cocoa框架.插件及公共API开发者提供一些编码指导,实质上相当于Ap ...

  9. 网易前端JavaScript编码规范

    在多年开发邮箱webmail过程中,网易邮箱前端团队积累了不少心得体会,我们开发了很多基础js库,实现了大量前端效果组件,开发了成熟的opoa框架以及api组件,在此向大家做一些分享.今天想先和大家聊 ...

随机推荐

  1. 配置 Gitblit 进行 Git 代码管理

    配置 Gitblit 进行 Git 代码管理 环境 CentOS 7 x64 IP: 10.6.0.2 首先需要安装jdk  安装步骤 就略过了 下载最新版本  gitblit wget http:/ ...

  2. 将UTF8编码转化为中文 - NSString方法

    方法一: 代码如下,如有更好的方法 麻烦贴出来,这个方法是通过webview进行解码的 UIWebView *web = [[UIWebView alloc] init]; NSString *tsw ...

  3. margin负值布局(一)

    搜索关键词:margin  负-100% 链接地址: 负margin用法权威指南 负边距(negative margin)实现自适应的div左右排版 <div class="cont& ...

  4. IFrame跨域访问自定义高度

    由于JS禁止跨域访问,如何实现不同域的子页面将高度返回给父页面本身,是解决自定义高度的难点. JS跨域访问问题描述:应用A访问应用B的资源,由于A,B应用分别部署在不同应用服务器(tomcat)上,属 ...

  5. 不停的实例化对象导致OOM

    使用axis调用webService,系统运行一段时间后,出现了 OOM,还好日志中 记下了错误信息. Exception in thread "Thread-1301" java ...

  6. iOS tableViewCell plane格式下,接近section边缘不显示分割线却被复用解决办法

    今天做公司产品的时候遇到了如题问题,困扰我很长时间,用尽各种办法不能解决,究其原因不知为何,自定义cell低端有view划线的时候,划线一般的显示1像素,而贴着section的显示很少 顶多0.3像素 ...

  7. jquery $提示缺少对象$提示缺少对象

    jquery $提示缺少对象 项目中存在不同版本的jquery,有1.4也有1.2, 之前运行项目不会报错 " $提示缺少对象 ",但是我的IE9重置之后就报错,从网上找了一大堆, ...

  8. Apache/nginx转发设置-分布式部署

    Apache转发设置1. Weblogic安装 Weblogic8和Weblogic10默认安装,选择完全安装即可,如果是Weblogic9则选择自定义安装,勾选WebService plugin 2 ...

  9. Js把IE COM数组列表转换成数组

    今天写组件的时候遇到一个问题,就是当我需要对获取到的对象列表进行删减的时候,发现没有合适的方法,比如: //获取图片列表 var imgs = document.getElementsByTagNam ...

  10. css3 翻牌效果

    <!DOCTYPE html> <head> <meta http-equiv="Content-Type" content="text/h ...