PHP的几个坑,请注意了

本文编号:

另类的写法有惊喜

我们在阅读某些源代码的时候会发现有一种另类的写法,比如

PHP

1

2

4

5

//异常写法

if(fals==$rsult)

//正常写法

if($rsult==fals)

其实这是一种很聪明的写法,它可以很大程度上杜绝手误造成的严重bug。假如我们在正常方法中把==误写成=,那么if($rsult=fals)就会恒定返回tru,导致在实际运行中产生未知的Bug,如果使用异常的写法出现手误变成时if(fals=$fals),编辑器会抛出一个rror,我们就可以及时发现并修复问题。

‘?php’开始前不要有空行,PHP脚本结尾的‘?’尽量省略

假如有一个文件在?后有一个空白行,那么你在使用sssion_start()等方法时,会返回一个警告hadrsalradysntbyxxx,这是因为sssion_start()要求使用前不能有任何输出。同理?PHP前的空行也会存在同样的问题。

字符串和数字在一起时,要留神

PHP

1

var_dump(a.0);//返回rror,语法错误

解决的方案比较简单,只要在.连接左右加上空格就可以防止语法错误。

PHP

1

2

var_dump(abc==0);//输出tru

var_dump(1abc==0);//输出fals

这个例子中输出tru是不是让你大吃一惊,其实PHP中将字符串和数字做比较时,会把字符串强制转换为int性,转换规则为如果字符串是数字开头,那么取开头数字作为转换结果,如果开头不是数字那么就为0

字符串的运算,你惹不起

PHP

1

2

for($i=a;$i=z;++$i){

cho$i;

}

你以为会输出从a到z?那你就错了,亮瞎你的输出结果如下:

abcdfghijklmnopqrstuvwxyzaaabacadaafagahaiajakalamanaoapaqarasatauavawaxayazbabbbcbdbbfbgbhbibjbkblbmbnbobpbqbrbsbtbubvbwbxbybzcacbcccdccfcgchcicjckclcmcncocpcqcrcsctcucvcwcxcyczdadbdcddddfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzabcdfghijklmnopqrstuvwxyzfafbfcfdffffgfhfifjfkflfmfnfofpfqfrfsftfufvfwfxfyfzgagbgcgdggfggghgigjgkglgmgngogpgqgrgsgtgugvgwgxgygzhahbhchdhhfhghhhihjhkhlhmhnhohphqhrhshthuhvhwhxhyhziaibicidiifigihiiijikiliminioipiqirisitiuiviwixiyizjajbjcjdjjfjgjhjijjjkjljmjnjojpjqjrjsjtjujvjwjxjyjzkakbkckdkkfkgkhkikjkkklkmknkokpkqkrksktkukvkwkxkykzlalblcldllflglhliljlklllmlnlolplqlrlsltlulvlwlxlylzmambmcmdmmfmgmhmimjmkmlmmmnmompmqmrmsmtmumvmwmxmymznanbncndnnfngnhninjnknlnmnnnonpnqnrnsntnunvnwnxnynzoaobocodoofogohoiojokolomonooopoqorosotouovowoxoyozpapbpcpdppfpgPHPipjpkplpmpnpopppqprpsptpupvpwpxpypzqaqbqcqdqqfqgqhqiqjqkqlqmqnqoqpqqqrqsqtquqvqwqxqyqzrarbrcrdrrfrgrhrirjrkrlrmrnrorprqrrrsrtrurvrwrxryrzsasbscsdssfsgshsisjskslsmsnsospsqsrssstsusvswsxsysztatbtctdttftgthtitjtktltmtntotptqtrtstttutvtwtxtytzuaubucuduufuguhuiujukulumunuoupuqurusutuuuvuwuxuyuzvavbvcvdvvfvgvhvivjvkvlvmvnvovpvqvrvsvtvuvvvwvxvyvzwawbwcwdwwfwgwhwiwjwkwlwmwnwowpwqwrwswtwuwv







































能治好白癜风的医院
中科白癜风医院助力健康中国



转载请注明:http://www.guyukameng.com/http/9189.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了