在远古,曾经有一个盛极一时的程序语言时代,人们以寻找最好的编程语言、打造最好的编程招式为追求,皆为能在变幻莫测的0、1世界获取一席立足之地而混战厮杀——史称“灵妖的武林世界”。
在这里,Java、C、C++、C#是灵妖武林排名前几的门派,号称武林正派,奉行规矩、稳扎稳打,擅长以静制动之天地大法。
另一派号称自由派,坚信天下武功唯快不破,你强我快,至少我不落下风,它们的代表是Python、JavaScript、Ruby、PHP、Perl等等,虽排名比不上名门望族,但也山头林立,各有千秋。
此外还有一派,武学修为超越动静,认为世上一切皆由不变生万变,将武功万千形态归于函数,创造出单子、幺半群等至玄至奥武功,其代表为Haskell、Scala、Lisp等,其中Lisp独创连绵不绝之括号原力,用括号苦其心志,劳其筋骨,饿其体肤,终延展出不少方言武功,呈现弟子数不及方言数之势,然其中一门方言Clojure为该派之冉冉新星。
还有非常多的各宗各派,比如Go,虽在武林中排名50上下,但仍孜孜不倦,常怀一颗追求之心。
这,就是纷繁复杂的灵妖编程世界。
今天,我们要讲的是PHP派——及其一位门生——无名——的故事。PHP在武林里的名声不可谓不高,号称“最好的编程语言”,虽各家门派大都嘴服而心不服,但也佐证了PHP必有其独特之处的事实。PHP名声大,一开始即聚焦于Web领域,然名望却一直受累于刚出道时的莽撞行为——死缠烂打不讲规矩。若干年后虽成名立万,极大丰富完善了自身武功修为,当下的七重威力已甚少敌手,可过往历史始终难叫人忘怀。
时光再早百来年,大约在灵妖五百五十年间,PHP派一位高人,创造出了PHP的一个奇幻招式——生成器(Generator),因包含了连环八式的变化,又被称为“龙袭八式”。
其中最重要的招式是current()
、next()
和send()
。龙袭八式尤其擅长对付那些需要耗费大量内力的耗时硬仗,比如大文件处理、结构复杂数量众多的目录文件遍历处理、无穷无尽的斐波那契数列处理等。龙袭八式能够做到几乎无碍自身内力,应战时内力如滔滔江水般雄健浑厚,无穷无尽、一往直前,最终让对手筋疲力竭,从而战胜敌人。
但不可思议的是,不知何时,龙袭八式渐渐失传了,江湖上只剩下传说,偶尔有其现身的消息,却终究是一闪而过。可是江湖对龙袭八式的欲望之门却从未关闭。大致是两种人在寻找它:一种是PHP的门人,希望借助龙袭八式进一步提升功力,并提升PHP影响力;第二种是渴望击败它的武林豪杰,如另一Python流的生成器,总希望跟龙袭八式一较高低。
当时的江湖就是这样,彼此不服,崇尚特立独行、标新立异,一言不合就撸码厮杀,微博开骂。但历史前行的车轮却是不可能倒退的,寻求极致,在这个以编程语言说话的世界里,是行事准则。
近日武林中又有传闻,说龙袭八式在暴风城附近出现。皆因传闻时有,师父心有不安,遂派无名下山一探究竟。
无名自幼勤习PHP武功,PHP武功娴熟,然心中一直有个遗憾——那就是始终无缘见识龙袭八式,对于极度崇尚自家PHP武功的自己而言,都实在不好意思跟别人提起自己是写PHP的了。此次师父交办的事情,真是正中下怀。
无名借助<form>
和$_POST
招式,不日即达暴风城外的森林。这是他第一次出远门办理师父交办的重要任务,心里既忐忑又鸡冻,刚到森林即遇到洛萨跟古尔丹大战。对于古尔丹这个邪恶的Boss,无名气不打一处来,今个儿遇上个正着,岂能不伸张正义帮助英雄的洛萨?!无名自恃PHP功力雄厚,颇不把古尔丹放在眼里,可大战八百招之后,无名不禁暗暗叫苦,毕竟年轻,内力眼看撑不住了,而古尔丹的邪能却施展正酣。转眼又是百招过去,无名一不留神就被古尔丹一掌击飞百丈开外,不巧的是,恰好又落到了一个深不见底的地洞里。
无名在地洞了极速坠落了好一会儿,终于“嘣”一声重重落地,要不是无名及时施展出了PHP大法中的urlencode
招式,否则难免重伤倒地。
无名惊魂未定之际,突然黑暗中传来一声大喝:“来者何人?使得可是PHP派功法?”无名心头大骇,急问道:“前辈何人,如何知道小生使得是PHP大法?”那人黑暗中哈哈一阵大笑,说道:“我知道你为龙袭八式而来,看你是PHP门人,且根骨清奇、为人正直,我且传你这式绝世奇招吧!“未等无名反应过来,忽然一个硕大的黑影扑面而来,在无名身上迅速连拍了百多两百掌。说也奇怪,无名顿觉体内真气涌动,随全身经络而有序游走,说不出的澎湃激荡,但又十分舒适。紧接着,那黑影贴着无名的身体,搬弄摆布着无名,指点其招式,口中不停传授要义。
无名天资聪颖,约莫一个时辰的功夫,无名即将这式旷古绝学掌握得滚瓜烂熟。此时,黑影一晃,重新回到了黑暗之中,只听他对无名说:“你已完全掌握了龙袭八式,可以上去斗古尔丹了。”无名大喜,急切想问:“前辈何人?是我PHP门长老吗?”那人回道:“我是肯瑞托的一位法师,不要问我从哪里来、要往哪里去。我除了授予你龙袭八式,还帮你打通了任督二脉,现在的你足以笑傲江湖了。地上交战正是紧急关头,你赶紧上去......”无名不及细想,道谢之后躬身一纵,“嗖”地一声跃上了地面,迎面就是古尔丹!
古尔丹看到无名没死,心中甚是惊讶,立马释出邪能,意欲置无名于死地。无名见状,先是运行rewind()
,做好应对准备。看着古尔丹使将出邪能,紧接着立马连续而快速地施展出next()
、current()
组合招式,间或夹杂着send()
,一时间把龙袭八式使得风生水起,古尔丹大骇:“这小子怎么一时之间功底突飞猛进如斯?!”尚未等他反应过来,无名连绵不绝的PHP内力已如排山倒海般借着又一式的next()
迎面而来。“哇呜”一声,古尔丹被震飞了五百丈开外,连喷数口鲜血,而且是绿色的。古尔丹艰难地爬起来,怎么也想不明白这就是传说中的龙袭八式,也不等他细想,大喊一声:“Mak'gora,玛克戈拉哟,嘞了个去。”赶紧骑上饿狼坐骑狼狈逃离......
无名看着1000点生命值的古尔丹被自己的龙袭八式瞬间击倒,不禁提刀而立,为之四顾,为之踌躇满志,过了良久,感慨道:“PHP大法好”......
(我的博客:http://www.2gua.info)