首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Coding
V2EX  ›  PHP

leader 一定要我用 array()不让我用[]怎么办?

  •  
  •   checgg · 2016-10-25 10:06:31 +08:00 · 4933 次点击
    这是一个创建于 1145 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我真是、、、、

    46 回复  |  直到 2016-11-06 15:23:18 +08:00
        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   2016-10-25 10:22:08 +08:00
    公司 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   2016-10-25 10:40:50 +08:00
    @Sunyanzi
    我自己本地跑的也是 7.0 的版本。强制要求写[]真是极好的。
    不过参数类型和函数返回值我觉得没必要。
    还有我个人认为良好的项目代码,函数前面基本不需要写注释,函数名和参数名就已经说明了一切了。
    在每个函数前面加上这么一小坨真的好丑。
        13
    bombless   2016-10-25 11:03:50 +08:00
    可怕,不知道啥时候能一步到位上 7
        14
    poke707   2016-10-25 11:27:00 +08:00
    怕增加其他队员学习成本?
        15
    checgg   2016-10-25 11:46:24 +08:00
    @bombless 你是说他可怕还是我可怕。
        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 。。。
        35
    kideny   2016-10-25 17:17:09 +08:00
    @jhdxr 必须遵守行业标准和规范,还要身体力行的推广。
    顶一个!
        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 的作用在哪里,大家你一个风格我一个风格,相信我这是噩梦。
        44
    bombless   2016-10-27 01:17:00 +08:00
    @checgg 我说现状可怕
        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
    你领导说的对,尽量不用语法糖
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2314 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 27ms · UTC 13:48 · PVG 21:48 · LAX 05:48 · JFK 08:48
    ♥ Do have faith in what you're doing.