Discuz教程网

PHP IF ELSE简化/三元一次式的使用

[复制链接]
authicon dly 发表于 2011-8-30 19:21:04 | 显示全部楼层 |阅读模式
一般我们会这样写:
代码如下:

  1. <?
  2. if($_GET['time']==null)
  3. {
  4. $time = time();
  5. }
  6. else
  7. {
  8. $time = $_GET['time'];
  9. }
  10. echo $time;
  11. //如果GET有time这个值则带入变数time,如果没有就带现在time()时间
  12. ?>
复制代码

如果只单简单的判断,照上面这样写就太麻烦了,而且效能也不高!
可以改成使用三元一次式:

代码如下:

  1. <?
  2. $time = ($_GET['time']==null) ? (time()) : ($_GET['time']);
  3. echo $time;
  4. ?>
复制代码



简洁许多!
大概解释一下三元一次式意思
如果第一个括号()内的判断句成立 就执行问号? 后第一个括号() 的内容,如果不成立则执行问号? 后第二个括号() 的内容
代码如下:

  1. <?
  2. $a = 5; //定义变数a=5
  3. $b = 3; //定义变数b=5
  4. $c = ($a==$b) ? ("yes") : ("no");
  5. //如果 a=b,c就=yes ; a不等于b,c就=no
  6. ?>
复制代码




还有一种简化
代码如下:

  1. $bool = true;
  2. if($bool)
  3. {
  4. setValueFun();
  5. }
复制代码




可以简化成
代码如下:

  1. $bool && setValueFun();
复制代码








上一篇:PHP程序开发范例学习之表单 获取文本框的值
下一篇:PHP文件上传后缀名与文件类型对照表整理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1314学习网 ( 浙ICP备10214163号 )

GMT+8, 2025-5-3 07:43

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表