编程语言php中三元运算符用法详解

编程语言php中三元运算符用法详解三元运算符,是软件编程中的一个固定格式,即( ?: )(注:括号里面的内容才是正确的格式)。语法:条件 ? 结果1 : 结果2说明:问号前面的位置是判断的条件,如果满足条件时结果1,不满足时结果2。代码如下复制代码<?PHP$id = isset($_GET['id']) ? $_GET['id'] : false;?>一条代码替代了很多的代码。首先,它使用isset ()函数,检查$_GET['id']是否存在。如果$_GET['id']确实存在,它将返回它的价值。但是,如果它不存在,条件即为假,这时返回的是false。$id的值取决于$_GET['id']是否存在。所以,基本上,如果$_GET['id']存在,$id=$_GET['id'],反之$id=false。例用“?:”条件语句检验用户输入值:代码如下复制代码<?php$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);?>前面使用三元运算符的代码和下面的代码等同:代码如下复制代码<?phpif (isset($argv[1])) {$filename = $argv[1];} else {$filename = "php://stdin";}?>可以看出,假设用普通的if-else结构写上述代码,代码量会比上面多出许多,但第二种形式更易理解,而且不要求更多的录入。所以在挑选三元运算符时,请务必权衡一下利弊。三元运算符优点PHP中的三元运算符(?:)大大减少了程序员写这些语句的时间。它的语法如下:condition ? do_if_true : do_if_false;三元运算符不是一种必不可少的结构,但却是一种美化代码的途径。同样,它可以取代不好的if…else代码块,并且可以提高代码的可读性。同样,用户可以使用PHP的or运算服赋予变量默认值:代码如下复制代码<?php$filename = $argv[1] or $filename = "php://stdin";?>文章来源:https://www.php.cn/faq/178620.html

(0)

相关推荐

  • 5个PHP编码小陋习

    https://www.shengchulai.com/blog-zk2Soxs3RE.htm 在做过大量的代码审查后,我经常看到一些重复的错误,以下是纠正这些错误的方法. 一:在循环之前测试数组是否 ...

  • macCMS 全版本通杀SQL注射(包括最新7.x)

    本次针对官网最新7.7版本的maccms测试,和之前的6.x注射有一些差异(重构了代码,而且用了360给的防护脚本) 结合之前无人认领的旧版注射,可以达到全版本注射 /user/index.php l ...

  • 字中六合的用法详解, 地支六合如何运用

    地支六合比较复杂,分为合来.合去.合绊,并且还分合吉.合凶,绝非一般的八字命书上说的,看到六合就说好,试想,得病了,是否也是和疾病相合,如何能好,八字中六合的用法详解如下:  1.合来 从字面的意思 ...

  • PPT中SmartArt的用法详解

    SmartArt是微软在Microsoft Office 2007中就已经加入的功能,虽然其美观程度不如网络众多精美的图表,但远比把PPT当word使用.大段文字直接贴上要好的多吧,且SmartArt ...

  • C#中string.format用法详解

    String.Format 方法的几种定义: String.Format (String, Object) 将指定的 String 中的格式项替换为指定的 Object 实例的值的文本等效项. Str ...

  • C/C++编程知识:运算符(七)丨三元/三目运算符知识详解

    预测以下C ++程序的输出. #include <iostream> using namespace std; int main() { int test = 0; cout <&l ...

  • PS中图层蒙版的原理和用法 详解图层蒙版的概念 换天空再简单不过

    大家好,我是好色之图.疫情期间禁足在家,相信大家都闲的很无聊吧,写一节PS小教程,供小伙伴们闲暇之余学习使用,利用发呆的时间学习点新知识,也是不错的选择.本节内容是'图层蒙版的概念和使用方法'. 图层 ...

  • Mysql中timestamp用法详解

    前言:时间戳(timestamp) 前言:时间戳(timestamp) 前言:时间戳(timestamp),一个能表示一份数据在某个特定时间之前已经存在的. 完整的. 可验证的数据,通常是一个字符序列 ...

  • Once在GRE填空中的常考用法详解

    Once在GRE填空中一共有三种用法:一次.曾经.一旦.同学们觉得最简单,也最熟悉的自然是"一次"的用法,但"一次"并不是在GRE填空中的重点考察对象,常考的依 ...

  • PS中图层蒙版的原理和用法详解图层蒙版的概念换天空再简单不过

    本节内容是'图层蒙版的概念和使用方法'. 图层蒙版是很多刚开始学习PS的伙伴头疼的工具之一,官方术语解释的太过专业和笼统,十分晦涩难懂,这也是PS工具书的特点之一了,在这一节里,我们尝试用老百姓的家常 ...

  • 八字地支中所藏人元的用法详解

    何为人元,人元就是地支内所藏的天干,也叫地支藏干,如子中藏癸,丑中藏己癸辛等等,具体请看下表: 地支藏干表 地支藏干在八字中的有利之处: 可以辅助天干地支的不足之处,例如下图这个八字: 八字日元甲木生 ...