当前位置:Gxlcms > PHP教程 > PHP符合PSR编程规范的实例

PHP符合PSR编程规范的实例

时间:2021-07-01 10:21:17 帮助过:24人阅读

好的代码书写习惯可以让人赏心悦目,下面这篇文章就给大家分享了PHP符合PSR编程规范的实例代码,有需要的朋友们可以参考借鉴,下面来一起看看吧。

前言

关于开发标准这块,可以说一直都是风格迥异,各家都有各家的玩法,民间更是个人玩个人的。目前我们国内比较出名的几个框架(Yii,Laravel) 都已经支持Composer并且加入了PHP-FIG(php框架程序组)。

其中Composer的自动加载就支持PHP-FIG指定的PSR-0 和 PSR-4 规范来实现自动加载机制,并且Composer推荐使用PSR-4

PHP-FIG

这是一个自愿非正式的机构,但是就目前对我们的影响来看,可能都已经默认为一个公信组织了,的的确确制定了不少非常好的规范

目前从官网看,已经投票( http://www.php-fig.org/psr/ )通过的有7个大的规范了

  1. PSR-0 自动加载规范 ( 官方已废弃,主要是php5.3以前没有命名空间 )

  2. PSR-1 编码规范

  3. PSR-2 编码风格推荐

  4. PSR-3 日志接口

  5. PSR-4 改进的自动加载规范( 官方推荐 ,规范更简洁调理清晰了)

  6. PSR-6 缓存接口

  7. PSR-7 HTTP消息接口

实例

  1. <?php
  2. namespace Standard; // 顶部命名空间
  3. // 空一行
  4. use Test\TestClass;//use引入类
  5. /**
  6. * 类描述
  7. *
  8. * 类名必须大写开头驼峰.
  9. */
  10. abstract class StandardExample // {}必须换行
  11. {
  12. /**
  13. * 常量描述.
  14. *
  15. * @var string
  16. */
  17. const THIS_IS_A_CONST = ''; // 常量全部大写下划线分割
  18. /**
  19. * 属性描述.
  20. *
  21. * @var string
  22. */
  23. public $nameTest = ''; // 属性名称建议开头小写驼峰
  24. // 成员属性必须添加public(不能省略), private, protected修饰符
  25. /**
  26. * 属性描述.
  27. *
  28. * @var string
  29. */
  30. private $_privateNameTest = ''; // 类私有成员属性,【个人建议】下划线小写开头驼峰
  31. /**
  32. * 构造函数.
  33. *
  34. * 构造函数描述
  35. *
  36. * @param string $value 形参名称/描述
  37. */
  38. public function __construct($value = '')// 成员方法必须添加public(不能省略), private, protected修饰符
  39. {// {}必须换行
  40. $this->nameTest = new TestClass();
  41. // 链式操作
  42. $this->nameTest->functionOne()
  43. ->functionTwo()
  44. ->functionThree();
  45. // 一段代码逻辑执行完毕 换行
  46. // code...
  47. }
  48. /**
  49. * 成员方法名称.
  50. *
  51. * 成员方法描述
  52. *
  53. * @param string $value 形参名称/描述
  54. *
  55. * @return 返回值类型 返回值描述
  56. * 返回值类型:string,array,object,mixed(多种,不确定的),void(无返回值)
  57. */
  58. public function testFunction($value = '')// 成员方法必须小写开头驼峰
  59. {
  60. // code...
  61. }
  62. /**
  63. * 成员方法名称.
  64. *
  65. * 成员方法描述
  66. *
  67. * @param string $value 形参名称/描述
  68. *
  69. * @return 返回值类型 返回值描述
  70. */
  71. private function _privateTestFunction($value = '')// 私有成员方法【个人建议】下划线小写开头驼峰
  72. {
  73. // code...
  74. }
  75. /**
  76. * 成员方法名称.
  77. *
  78. * 成员方法描述
  79. *
  80. * @param string $value 形参名称/描述
  81. *
  82. * @return 返回值类型 返回值描述
  83. */
  84. public static function staticFunction($value = '')// static位于修饰符之后
  85. {
  86. // code...
  87. }
  88. /**
  89. * 成员方法名称.
  90. *
  91. * 成员方法描述
  92. *
  93. * @param string $value 形参名称/描述
  94. *
  95. * @return 返回值类型 返回值描述
  96. */
  97. abstract public function abstractFunction($value = ''); // abstract位于修饰符之前
  98. /**
  99. * 成员方法名称.
  100. *
  101. * 成员方法描述
  102. *
  103. * @param string $value 形参名称/描述
  104. *
  105. * @return 返回值类型 返回值描述
  106. */
  107. final public function finalFunction($value = '')// final位于修饰符之前
  108. {
  109. // code...
  110. }
  111. /**
  112. * 成员方法名称.
  113. *
  114. * 成员方法描述
  115. *
  116. * @param string $valueOne 形参名称/描述
  117. * @param string $valueTwo 形参名称/描述
  118. * @param string $valueThree 形参名称/描述
  119. * @param string $valueFour 形参名称/描述
  120. * @param string $valueFive 形参名称/描述
  121. * @param string $valueSix 形参名称/描述
  122. *
  123. * @return 返回值类型 返回值描述
  124. */
  125. public function tooLangFunction(
  126. $valueOne = '', // 变量命名可小写开头驼峰或者下划线命名,个人那习惯,据说下划线可读性好
  127. $valueTwo = '',
  128. $valueThree = '',
  129. $valueFour = '',
  130. $valueFive = '',
  131. $valueSix = '')// 参数过多换行
  132. {
  133. if ($valueOne === $valueTwo) {// 控制结构=>后加空格,同{一行,(右边和)左边不加空格
  134. // code...
  135. }
  136. switch ($valueThree) {
  137. case 'value':
  138. // code...
  139. break;
  140. default:
  141. // code...
  142. break;
  143. }
  144. do {
  145. // code...
  146. } while ($valueFour <= 10);
  147. while ($valueFive <= 10) {
  148. // code...
  149. }
  150. for ($i=0; $i < $valueSix; $i++) {
  151. // code...
  152. }
  153. }
  154. }

以上就是本文的全部内容,希望对大家的学习有所帮助。


相关推荐:

php设计模式一之命名空间、自动加载类、PSR-0编码规范

PHP规范之PSR规范

PHP面向对象PSR-0规范详解

以上就是PHP符合PSR编程规范的实例的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行