2010-02-15 18 views
7

我会通过一些海豚CMS代码最近的(对于PHP仇敌一craptastic例子),当我在/grp.php跨越这个小宝石跑:在花括号里包装一个程序块在php中做什么?

{ 
    switch ($_REQUEST['action']) { 
     //a crapton of switch statements 
    } 
} 

我很好奇包裹卷曲大括号,“{}”没有任何关键字,是关于。我主要做PHP开发,所以可能(希望?? !!?)这是我只是不知道的东西,但我已经尝试删除大括号和代码运行像往常一样。

我很难理解wtf的目的是什么。

任何想法?

(注意:这是真的只是为我自己的熏陶,我几乎睡不着觉,因为这是不作出任何意义,我...。)

+1

某些编辑器允许代码折叠/折叠 - 所以,我想象一个开发人员可以在代码块中放入大量代码,然后折叠该代码块,以便更轻松地浏览大型代码文件。 – leepowers 2010-02-15 03:20:43

回答

11

我在大块看到了这一点程序代码。它似乎帮助逻辑块,通常可能被抽象为一个单独的功能。这在某种程度上有助于编辑,并且您的IDE可以通过大括号快速识别块。

在功能上,我不认为它做任何事情。从视觉上来说,它有助于组代码。

+1

因此,“程序员”(现在我怀疑它引用了引号)有效地将代码弄糟了,以使他更容易?如果你问我,那种懒惰和一点点混蛋的做法。接受:) – 2010-02-15 03:26:44

+8

仅仅因为这种对他人工作的无袖解雇让我感到有些不耐烦:作为对其他开发人员的礼貌,我总是首先假设WTF代码是放在那里的,这是有原因的。我这样说是因为我知道有时我做的事情乍一看似乎有点切题解决问题 - 但无论何时我被迫这样做,我留下一个详细的评论,解释为什么我做了我所做的事情。我认为最好假设这个人知道他在做什么,除非你收集到相反的证据。很好,下次可能是你的代码。对不起,我的宠物狗狗 – 2010-02-15 03:59:39

+1

我明白你的观点,但这并不意味着无所顾忌。它应该是古老的,磨坊的,不屑的。这是我的一个难题,让IDE变得复杂。认真。我有点希望我是snarky,但我真的不是:) 在代码中添加特殊标记以改进单个开发人员IDE体验只是懒惰。 我同意,如果你必须这样做一些跛脚只是发表评论。事实上,缺乏评论迫使我寻找解决方案。 – 2010-02-15 04:12:26

0

没有更多的上下文,很难说。他们可能试图限制某些变量的范围。我不明白PHP的范围规则,但他们可能会试图确保在switch语句中修改的变量不会影响块之外的事情。或者,他们可能会使用RAII模式。

+0

实际上,它确实[nothing](https://gist.github.com/AD7six/11769a863f062c75ee5a) – AD7six 2014-06-09 22:03:00