手机
当前位置:查字典教程网 >编程开发 >php教程 >由php if 想到的些问题
由php if 想到的些问题
摘要:复制代码代码如下:/*Javascriptcode*/if('undefined'==typeofdocument.cookie['cook...

复制代码 代码如下:

<?php

/*PHPcode*/

header("Content-type:text/javascript");

if(!haveCookie('cookieName')){

//...dosomething

?>

/*Javascriptcode*/

if('undefined'==typeofdocument.cookie['cookieName']){

setCookie('cookieName',3600);

}

//...dosomethingwithJavascript

<?php

}

?>

粗看起来代码已经无懈可击,我们亲爱的小马还是发现了问题的存在。就是在Javascript中的那个判断是永远为true

复制代码 代码如下:

if('undefined'==typeofdocument.cookie['cookieName']){

//...

}

因为这段代码是在PHP端有个前提,就是

if(!haveCookie('cookieName'))的时候,才会在客户端显示。那么,当不满足这一条件,这段代码自然就不会扔给客户端。这样说似乎有点笼统,那么先撇开Javascript代码,我们就单纯使用PHP代码表述一下

复制代码 代码如下:

<?php

header("Content-type:text/javascript");

if(!haveCookie('cookieName')){

if(!haveCookie('cookieName')){

setCookie('cookieName');

}

}

?>

这样就显得清晰了很多,并很容易就能发现问题所在--我们在不经意间就多做了一次判断,虽然这是Javascript在客户端执行的。

总结下,本人从这段代码想到的些废话:

代码越长,不见得效率就越高

在不影响逻辑和流程的情况下,尽量将多个判断写在一起

尽量将低复杂度的函数放前判断

过多的判断容易造成程序效率降低,在判断中使用高时间复杂度的函数时尤其要注意

如果发现if嵌套得太多,就得重新考虑流程和算法

健壮的代码不是靠过分的判断保证而成的

将代码简化后,会发现很多还未发现的问题

过多的判断另个角度理解,是缺乏对代码的信心

最后,再次感谢小马同志。

【由php if 想到的些问题】相关文章:

php限制ip地址范围的方法

关于PHP中操作MySQL数据库的一些要注意的问题

Php部分常见问题总结第1/2页

PHP生成plist数据的方法

递归实现php数组转xml的代码分享

php 字母大小写转换的方法

PHP截取中文字符串的问题

一个用php3编写的简单计数器

Oracle 常见问题解答

php分页的功能模块分享

精品推荐
分类导航