PSR2 里提到: 方法名称 必须 符合 camelCase() 式的小写开头驼峰命名规范
但是 php 默认有一大堆不符合改规范的函数,如:
file_get_contents , json_encode
1
zsdroid 2018-08-13 17:27:23 +08:00
PSR2 针对 php 的,内置函数不是 php 开发的
|
3
demonchang 2018-08-13 17:30:44 +08:00
你自己写的 php 要遵守这个规范。。
|
4
zsdroid 2018-08-13 17:30:46 +08:00 1
@jam1024 #2 内置函数是 c 开发的啊,更何况 php 出来的时候还没有 psr1 呢,难道出来一个规范就要把 php 全部重构吗
|
5
feiyuanqiu 2018-08-13 17:31:17 +08:00 1
1. 制定 PSR 的 PHP-FIG 不是 PHP 官方组织,约束不到核心开发
2. PHP 内置函数名是历史遗留问题,现今也没看到任何要整改的迹象,PHPer 不看重这个 |
6
jam1024 OP @feiyuanqiu 编起码来感觉各种命名不一混用,有点蛋疼
|
7
mjVtb96d2bap2u3Z 2018-08-13 17:34:23 +08:00 via Android
PSR2 并不是 php 官方定的,最初只是几个开源开发者定的协作规范。后来其他开发者遵循这个规范带来很大方便,才逐渐流行开来。
|
8
chinvo 2018-08-13 17:34:36 +08:00
原因就不说了,如果感觉不爽,可以用一个 helper function 把你要用的内置函数封装下
|
9
WuwuGin 2018-08-13 17:36:34 +08:00
1.psr2 只是规范,不是一个强制标准
2.php 的内置函数 != 方法 3.php 历史遗留问题需要考虑兼容性。 |
11
allgy 2018-08-13 18:34:20 +08:00
内置函数开发的时候连 FIG 这个组织都没诞生
|
12
sagaxu 2018-08-13 19:36:40 +08:00 via Android
method 和 function 的要求是不同的
|
13
pynix 2018-08-13 19:38:36 +08:00
退坑保平安。
|
14
SimbaPeng 2018-08-13 19:42:01 +08:00 via Android
php 的宗旨是 freestyle,233333
|
15
zn 2018-08-13 20:12:47 +08:00
哥哥,知道什么叫历史包裹,什么叫向后兼容性吗?
|
16
hubqin 2018-08-13 20:24:44 +08:00 via Android
按我的理解,方法是指类的方法,和全局的函数是不一样的概念。
|
17
shiny 2018-08-13 20:33:05 +08:00
方法是 method, 函数是 function,用中文的时候稍不注意就会混淆两者。
|
18
anewg 2018-08-13 20:36:31 +08:00
对这个敏感的还是别用 php 了
|
19
KgM4gLtF0shViDH3 2018-08-13 21:01:25 +08:00 via iPhone
@zn #15 是包袱吧
|
20
ninerec 2018-08-13 21:55:52 +08:00
个人的理解以及基于其上的建议:
1. 类似 PHP 的内置函数&自定义全局的 function,使用 snake_case ; 2. 自定义的类.方法,方法名使用 camelCase; 3. PSR 是用来约束社区&指导自己的编码规范的,别太纠结。 |
21
zlhsvc 2018-08-13 23:50:56 +08:00
其实这个很随意的,公司统一下规范就好了
|
22
Nick66 2018-08-14 11:23:50 +08:00
函数和方法还是有区别的,内置函数是历史遗留问题
|
23
bapijun 2018-08-17 11:56:54 +08:00
php 函数哪个是遗留问题,没办法的事情,比这个更牛逼更操蛋的遗留问题有的是
|
24
bapijun 2018-08-17 11:59:13 +08:00
psr 的意义,在于现在主流的 php 程序员都这么干,你看别人的代码这样写,自己的代码也这么命名,大家都舒服,
|
25
hp66722667 2018-08-25 16:22:14 +08:00
来搞 python 默认 a_b_c(),特别统一
|