|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
不过语法好学,但是怎么用语法来实现每个人都有每个人的方式,几乎是各有千秋。然而借鉴别人成功的代码,绝对是有益无害,因此,多看那些经过千锤百炼凝出来的经典代码,是进阶的最好方法。 <p>标题:找出以下代码的毛病的地方:
<?
function baz($y $z) {
$x = new Array();
$x[sales] = 60;
$x[profit] = 20:
foreach($x as $key = $value) {
echo $key+" "+$value+"<BR>";
}
}
你能找到几个呢?
假如你发明函数参数列表中少了逗号、“new Array()”是不准确的、行末用了冒号而不是分号、foreach中没有效“=>”及用“+”来毗连字符串,那祝贺你,你找到了一切的毛病,你已把握了PHP编程的基本。
如今我来讲说我是怎样回覆这道题的。我固然也找出了以上这些成绩,但我更进一步。好比,你有无发明在数组索引里没有效引号将字符串括起来?固然这不会形成严重毛病,但这是一个编码毛病。别的,你注重到在echo一行它利用了双引号而不是单引号吗?利用了PHP入手下手标记的缩写模式?而且没有效“<br/>”而是用了“<BR>”?
在找出了实践毛病后,我又在下面找到的成绩前面加了正文。这足够让这份答卷从“准确”改变为“发人深醒”了,这也给我的请求加了很多分,所以他们决意聘请我。(但最初我回绝了,由于我喜好紧凑的生涯节拍,并将本人的PHP妙技贡献给我的客户,而不是一家浏览电信市场的公司。我需求一个舞台来大展身手。)
那末接上去就来看看我写的10条PHP编程习气吧:
1、利用单引号括起来的字符串
当利用双引号来括字符串时,PHP注释器会对其停止变量交换、本义等操作,如“\n”。假如你只想输入一个根基的字符串,就用单引号吧,如许会节俭一些资本。固然,假如你需求停止变量交换的,那就必需用双引号了,但其他情形下仍是用单引号吧。
2、字符串的输入
你以为以下哪一条语句的运转速度最快?
print "Hi my name is $a. I am $b";
echo "Hi my name is $a. I am $b";
echo "Hi my name is ".$a.". I am ".$b;
echo "Hi my name is ",$a,". I am ",$b;
echo 'Hi my name is ',$a,'. I am ',$b;
或许这看起来很奇异,但现实上最初一条的运转速度是最快的。print比echo要慢,在字符串中停止变量交换时会慢,而毗连字符串要比用逗号毗连来得慢,最初一句则是第一个习气的表现。所以,不在字符串中停止变量交换不但会加速法式运转速度,也会让你的代码在任何语法高亮显示的编纂器中显得更加易懂(变量会被高亮显示出来)。很少人晓得echo的参数可以用逗号毗连,且速度会比字符串联接要来得快。最初再用上第一个习气,那这条语句就十分好了。
3、在数组索引中利用单引号
正如你在下面的测试题中所看到的,我指出了$x[sales]从严厉意义下去说是毛病的,索引应当被括起来,即$x['sales']。这是由于PHP会将没有括起来的索引识别为“裸”字符串,并把它注释为一个常量。当找不到该常量的界说时,才将其注释为一个字符串,所以这条语句才是可运转的。把索引括起来可以省去这局部任务,假如未来正好要用这一字符串界说常量时也就不会有毛病了。我乃至传闻如许做要快七倍摆布的工夫,固然我没有亲身测试过。更多关于这一话题的会商,请看PHP手册“数组”一章中的的“数组的能与不克不及”一节。
4、不要利用入手下手标记的缩写模式
你正在利用如许的符号吗?“<?”长短常糟的符号,它会引发与XML注释器的抵触。并且一旦你宣布了这些代码,那末利用者就必需修正php.ini文件来翻开对此符号的撑持。所以其实没有来由去利用这类模式。用“<?php“吧。到现在,对排版还是不很熟练,经常会排不好。 |
|