欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【PHP 的八卦两则】,下面是详细的分享!
PHP 的八卦两则
PHP5.3 的正式发布,又重新关注起其语言本身。细心的朋友可能发现,PHP5.3 增加了 goto 语句,这在结构化语言今天似乎是有点不可思议的事情。
按照官方的说法,其实这和我们传统理解的 goto 还是有所差别。PHP 5.3 中的 goto 语句只能在脚本文件以及上下文中跳转,因此它无法从某函数或方法跳到其他的函数或者方法 -- 这不得不让我怀疑是否是“妥协”的结果。
看来 PHP 语言的设计者对 goto 语句应用是方便从从多重循环体中跳出(在其文档中的例子也说明了这点)。但其实这功能的本身也引发了不少的争议,个人也隐约的闻到了潘多拉身上的香水味。
其实“好事者”早在 2007 年就开始“期待”这项“新功能”,相信他现在会很开心。不过有趣的是这篇文章的留言给原作者泼了盆冷水。的确,goto 语句所能完成的功能,其实善用 switch 也能做到,而且更有可读性。
不过不管怎么样,语言本身仅仅是工具而已。从程序的本身角度考虑(不仅仅是 PHP),如果有过多的循环等的语块嵌套,那就说明这段代码必须需要优化了。到底应不应该使用 goto 语句,其实本人和其他的 PHP 人员也有过讨论。
最终,大家较为统一的观点就是,避免使用。
“PHP 的 10 宗罪”
老外较起真来真的非常让人受不了,这不又有好事者总结了 PHP 语言本身语法的 “10 宗罪”。其实,我个人这与其称为“Mistake”,还说是 PHP 提供的“美丽的陷阱”。
例如,文中提到的有关单引号和双引号的变量转义问题。其实这一争论的声音从学 PHP 起就在耳畔充斥。甚至记得当年还有道经典的面试题,就是考单引号和双引号的的速度孰快 -- 回过头来看,这论点就犹如此道面试题一样,是没有任何的意义的。
但这不代表文中的些“Mistake”都可以当作笑谈,有些是的确需要注意的。例如
|
以下为引用的内容: $i=0; |
这样的写法。对应的其实还有 for 语句,我们可能“手残”多写了个分号(不要不承认),那么就只能祈祷 set_time_limit 的数字小些了。
文中指出的其他些问题,也是我们需要纳入思考的范围中,例如数据库存取的缓存问题。为何 PHP 为何至今没有数据池这样的概念,其实这需要从 PHP 这门语言本身的设计哲学出发了。从此问题其实可以引申争为何 PHP 没有走向 Java 的套路,好吧这问题又可以争论一番了。
文中还有其他类似的条目,都非常的具有争议(也许搞不好这就是作者的初衷),但无论怎么说,其提出的几个问题都是值得我们去思考的。
深夜杂谈随想,乱语之处众位见笑了,欢迎发表您的看法。
原文地址:http://www.gracecode.com/archives/2968/
以上所分享的是关于PHP 的八卦两则,下面是编辑为你推荐的有价值的用户互动:
相关问题:伏羲先祖是怎么创立八卦的??
答:根据河图和洛书,关于这个的传说:一是。伏羲氏观察自然界各种事物的运动变化,总结其规律,创画了作卦。二:“龙马负图出于河,圣人则之,以画八卦”。这句话的意思是说有一匹龙马,背负河图,从渭河里出来,伏羲氏参考河图的规律,画了八卦。这... >>详细
相关问题:如何用易经八卦起卦?
答:易经中最原本的起卦是用蓍草占卦的,这是周易中有记载的。~~“幽赞于神明而生蓍,参天两地而倚数,观变于阴阳而立卦,发挥于刚柔而生爻”这是周易占卜的原始依据。 具体过程是“大衍之数五十,其用四十有九。分而为二以象两,挂一以象三,揲之以四... >>详细
相关问题:周易中的风水八卦是辩证认知方式,还是封建
答:当然是辩证认识了,山东大学有中国最强的周易研究机构,许多人都是国家官员御用风水师。你可以搜一下刘大均这个人就知道了。因此,周易博大精深啊 >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
