我真是、、、、
1
overlords 2016-10-25 10:08:21 +08:00 1
你的 leader 考虑兼容性吧
|
2
congjf 2016-10-25 10:10:43 +08:00
那你为什么一定要用 [] ?
|
3
FrankFang128 2016-10-25 10:12:50 +08:00 1
怼领导有好处?
|
4
qhxin 2016-10-25 10:12:58 +08:00
兼容性,没毛病
|
5
penjianfeng 2016-10-25 10:17:34 +08:00
新特性自己项目用用就行,公司项目如果不知道线上版本,老老实实写旧语法,不然等你遇到坑了你就会知道你 leader 当初让你写旧语法的原因了
|
6
xujif 2016-10-25 10:21:29 +08:00
[] 是 5.4 开始的吧,那就是 trait ,命名空间都不能用喽。。那就一点都不好玩了啊。
|
7
xujif 2016-10-25 10:21:57 +08:00
[]对于 php 来说不能说是新特性了吧。。。
@penjianfeng |
8
checgg OP 公司 PHP 版本本来是 5.4 以上的版本。
我喜欢用[]啊。这样写起来舒服,好看。 array 好丑啊。 而且现在 return 我也尽量用 True 和 False 。 这样就不用考虑我是在写 python 还是 php 了。。。 |
9
zsdsz 2016-10-25 10:27:46 +08:00
我一直用 array()
array_column 这个函数我之前也一直避免使用 看到别人的代码没人考虑向下兼容后才开始用的 |
10
shuimugan 2016-10-25 10:28:41 +08:00
如果你项目依赖的库都用了[]和 Traits 等 php5.4 起的特性,那么你项目为什么还不用[]?根本就换不回 5.3 了啊
|
11
Sunyanzi 2016-10-25 10:31:52 +08:00
各个公司情况不同啊 ... 线上在边边角角还有不少 5.3 的机器的话不这么写还能怎么写 ..?
说来我倒是强制要求我的团队必须写 [] 不能写 array() ... 但我们的开发环境是 php 7.1 RC ... 我还要求每个人必须显式声明参数类型和函数返回呢 ... |
12
checgg OP @Sunyanzi
我自己本地跑的也是 7.0 的版本。强制要求写[]真是极好的。 不过参数类型和函数返回值我觉得没必要。 还有我个人认为良好的项目代码,函数前面基本不需要写注释,函数名和参数名就已经说明了一切了。 在每个函数前面加上这么一小坨真的好丑。 |
13
bombless 2016-10-25 11:03:50 +08:00
可怕,不知道啥时候能一步到位上 7
|
14
poke707 2016-10-25 11:27:00 +08:00
怕增加其他队员学习成本?
|
16
cuebyte 2016-10-25 11:47:35 +08:00
你写你的,他还能把你开了不成?我特么最受不了的就是 array()了
|
17
elvba 2016-10-25 11:48:22 +08:00
虽然不是你的问题,但是你怼不过你的 leader 啊
话说我这边的环境还是 5.2 , 12 年的项目,命名空间啥的都没,不过在自己手撸了一套中间件、简单的 ORM 、表单验证之后,用起来也没那么差 |
18
akira 2016-10-25 11:52:25 +08:00 3
公司一定要有一个统一的代码规范要求。
要么你说服 leader 改规范, 要么你就按照 leader 要求走 |
19
Lonely 2016-10-25 11:56:35 +08:00
这么点事也要上来说,能接受就用,不接受就走人。
|
20
zhanglintc 2016-10-25 12:08:30 +08:00
同意 19 楼啊, 在团队中就按照团队要求来.
|
21
penjianfeng 2016-10-25 13:12:49 +08:00
@checgg 看了下你的回帖,整个都是我喜欢我习惯,团队开发不是一个人瞎折腾,其他不想多说,跟 19 楼一个观点,不接受就走了,就这点事也要上来说.
|
22
penjianfeng 2016-10-25 13:13:41 +08:00
@xujif 你不知道很多遗留或者有点历史的项目的 PHP 版本,算了说多了都是泪...
|
23
1762628386 2016-10-25 13:23:15 +08:00
建议离职 说明这样的 loader 根本不懂 php 像楼主所说的 php 的 7.1 了还必须用 array 不让用[]可能真是有毛病吧 哪些说新特性的够了,[]还新特性?都出来好几年了
|
24
jhdxr 2016-10-25 13:28:36 +08:00
@checgg http://www.php-fig.org/psr/psr-2/ 参见 2.5 『 The PHP constants true, false, and null MUST be in lower case.』
|
25
killerv 2016-10-25 13:32:55 +08:00
估计是考虑兼容性吧,但是生产环境真的要用这么低版本的 PHP 吗?所以我都是直接[]
|
26
inmyfree 2016-10-25 13:37:19 +08:00
你偷偷用呗[:dogge]
|
27
xujif 2016-10-25 13:47:29 +08:00
@penjianfeng 题主已经说了运行环境就是 5.4 以后啊,难道谁有魄力把 php 环境改回 5.3 以前?
|
28
xxdd 2016-10-25 13:51:41 +08:00
程序嫒?
|
29
samtoto 2016-10-25 14:00:55 +08:00
preg_replace('/[(.*)]/', 'array($1)', $fileContent);
|
30
hzw 2016-10-25 15:40:38 +08:00
谁是 leader 谁负责,他负责你们就都听他的,什么叫团队啦。
他说什么就是什么,马上执行就行了,如果他说一个要求,下面人还要来回扯皮几个回合,最后再上 V2EX 发一帖,这效率可想而知了,也别程序员了,去国企做办公室主任好了。 |
31
cxbig 2016-10-25 16:24:05 +08:00
确保项目只会在 5.4 以上环境跑就用这个, TL 不愿意接受新事物就炒掉他。
|
32
pandachow 2016-10-25 16:27:29 +08:00
那你倒是问问他啊………………
|
33
realpg 2016-10-25 16:30:55 +08:00
我说一个
[]的问题不只是兼容性,还有 IDE 兼容性的问题 有些 IDE 或者调试扩展 并不支持[]的内容 尽管支持 5.6 的大量东西 |
34
fakefish 2016-10-25 17:09:24 +08:00
还以为是 js 。。。
|
36
latyas 2016-10-25 17:48:22 +08:00
说明你们 leader 水平不够,或者非得弄点大新闻体现自己的存在感。
|
37
lincanbin 2016-10-25 17:53:07 +08:00
代码一致性的规范,要么继续用 array(),要么你把旧代码里所有 array()改成[]。
|
38
helone 2016-10-25 18:13:49 +08:00
我们线上和开发都是 7 了,,,
|
39
PEP4JASON 2016-10-25 18:46:45 +08:00
为什么要用[] ? 我也不理解为什么有人要用 int 而不用 Interger
|
40
hiboshi 2016-10-25 19:23:09 +08:00
我们线上还是 5.2 有不服的么
|
41
aerostone 2016-10-25 23:45:41 +08:00 via iPhone
团队要求要服从,就这点。
|
42
barbery 2016-10-26 09:56:38 +08:00
你领导也是搞笑的,都什么时候了 PHP7 都出了,还兼容低版本 PHP
|
43
kepenj 2016-10-26 12:25:12 +08:00
你可以跟你 leader 聊你的看法和见解, but 代码上面最好按照他的要求来。不然一个公司设置 leader 的作用在哪里,大家你一个风格我一个风格,相信我这是噩梦。
|
45
ragnaroks 2016-10-31 08:40:05 +08:00
我是写 asp.net 的,我们(之前的)头头要求写 short/int/float,而我习惯写 Int16/Int32/Double,一次加班调试后他也跟着我一样的写法了.
|
46
gule10 2016-11-06 15:23:18 +08:00
你领导说的对,尽量不用语法糖
|