• 技术文章 >后端开发 >php教程

    php中三元运算符用法_PHP教程

    2016-07-20 11:17:00原创348
    语法:条件 ? 结果1 : 结果2

    说明:问号前面的位置是判断的条件,如果满足条件时结果1,不满足时结果2。

    代码如下

    $id = isset($_GET['id']) ? $_GET['id'] : false;

    ?>

    一条代码替代了很多的代码。首先,它使用isset ()函数,检查$_GET['id']是否存在。如果$_GET['id']确实存在,它将返回它的价值。但是,如果它不存在,条件即为假,这时返回的是false。$id的值取决于$_GET['id']是否存在。所以,基本上,如果$_GET['id']存在,$id=$_GET['id'],反之$id=false。


    用“?:”条件语句检验用户输入值:

    代码如下

    $filename = isset($argv[1]) ? $argv[1] : "php://stdin";
    $fp = @fopen($filename, ‘r’) or die("Can’t Open $filename for reading");

    while (!@feof($fp)) {
    $line = @fgets($fp, 1024);
    print $line;
    }

    @fclose($fp);
    ?>

    前面使用三元运算符的代码和下面的代码等同:

    代码如下

    if (isset($argv[1])) {
    $filename = $argv[1];
    } else {
    $filename = "php://stdin";
    }
    ?>

    可以看出,假设用普通的if-else结构写上述代码,代码量会比上面多出许多,但第二种形式更易理解,而且不要求更多的录入。所以在挑选三元运算符时,请务必权衡一下利弊。

    三元运算符优点

    PHP中的三元运算符(?:)大大减少了程序员写这些语句的时间。它的语法如下:

    condition ? do_if_true : do_if_false;

    三元运算符不是一种必不可少的结构,但却是一种美化代码的途径。同样,它可以取代不好的if…else代码块,并且可以提高代码的可读性。

    同样,用户可以使用PHP的or运算服赋予变量默认值:

    代码如下

    $filename = $argv[1] or $filename = "php://stdin";
    ?>

    www.bkjia.comtruehttp://www.bkjia.com/PHPjc/372094.htmlTechArticle语法:条件 ? 结果1 : 结果2 说明:问号前面的位置是判断的条件,如果满足条件时结果1,不满足时结果2。 代码如下 ?PHP $id = isset($_GET['id...

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php 三元 运算符 用法 语法 条件 结果 说明 问号 面的 位置 判断 如果 满足 不满足
    上一篇:解析web文件操作常见安全漏洞(目录、文件名检测漏洞_PHP教程 下一篇:php获取url参数程序代码总结_PHP教程
    php培训_php实战培训【立即报名】-php中文网第20期

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• 分享一个有趣的php版本的扫雷!• php输出乱码有关问题 • 大家帮忙分析下这段函数输出?该如何解决 • nginx使用sock方式调用php-fpm• PHP 对 memcache操作类
    1/1

    PHP中文网