php三元运算符要多个赋值,php中三元运算符用法
php中三元运算符用法如何算呢?就跟随百分网小编一起去了解下吧,想了解更多相关信息请持续关注我们应届毕业生考试网!
语法:条件 ? 结果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";
?>
php三元运算符要多个赋值,php中三元运算符用法相关推荐
- php三元运算符要多个赋值,php让三元运算符用起来更简单的小技巧
今天我发现了PHP三元运算符的一个小小的用法. 这给我干涸的大脑一点乐趣! PHP 三元运算符是对参数赋值时候的一个简洁的主要用法. 一个主要的用法: PHP 三元运算符能够让你在一行代码中描述判定代 ...
- 在python中定义类时、运算符重载_自定义 Python 类中的运算符和函数重载(上)...
如果你对 Python 中的str对象使用过 + 或 * 运算符,你一定注意到了它的操作与 int 或 float 类型的区别: 你可能想知道同一内置运算符或函数如何对不同类对象进行不同操作的.这分别 ...
- php中new运算符的作用,C++_C++编程中new运算符的使用学习教程,new运算符用作从自由存储为 typ - phpStudy...
C++编程中new运算符的使用学习教程 new运算符用作从自由存储为 type-name 的对象或对象数组分配内存,并将已适当分类的非零指针返回到对象. [::] new [placement] ne ...
- php三元运算符要多个赋值,PHP中的三元运算符和变量重新赋值
我已经仔细研究了三元运算符与if / else结构的问题,虽然我知道在正常情况下使用if / else结构的三元运算符没有性能损失/收益,但我没有看到任何提及情况. PHP特有的语言(但欢迎任何与语言 ...
- java中的 =运算符_(二十七)、java中的运算符
一.概述 java的运算符,分为四类: 算数运算符.关系运算符.逻辑运算符.位运算符 算术运算符(9):+ - * / % ++ -- 关系运算符(6):== != & ...
- java三元运算_记一次java中三元表达式的坑(避免踩坑)
近期一直在刷算法,原创文章写的也比较少,今天的主题不算是一个很大的问题,是我做题的时候出来的,而且还曾在A厂的公众号上看到过,今天自己整理一下,避免大家入坑. 这个问题是三元表达式会在计算的时候出现拆 ...
- c语言中数学运算符,运算符在数学和C语言中的区别.doc
运算符在数学和C语言中的区别 刚开始学C语言的人,一般都认为C语言中的运算符跟数学中的运算符完全相同,没必要去考虑和研究,从而在利用过程中经常出错而把学习C语言越来越难或神秘化,其实学C语言并不是很难 ...
- 【笔记】Java的运算符(赋值运算符号、一元运算符、算术运算符、关系运算符、自增与自减运算符、逻辑运算符、括号运算符、位运算符、三元(三目)运算符)、表达式与语句:简洁表达式
文章目录 一.运算符 1.赋值运算符号 2.一元运算符 3.算术运算符 4.关系运算符 5.自增与自减运算符 6.逻辑运算符 7.括号运算符 8.位运算符 左移位: 右移位: 9.三元(三目)运算符 ...
- java 大于或等于_【Java】运算符(算术、赋值、比较(关系)、逻辑、条件、位运算符)...
运算符 运算符: 1.算术运算符 2.赋值运算符 3.比较运算符(关系运算符) 4.逻辑运算符 5.条件运算符 6.位运算符 表达式:操作数+运算符 1.按照操作数个数的分类: (1)一元运算符:操作 ...
最新文章
- directx 双缓冲 运动 闪烁_24期0利率 | BMW超值福袋开启“双11”购车狂欢节!!
- POJ 2301 Beat the Spread!
- #1407 : 后缀数组二·重复旋律2 (不可重叠最长重复子串问题)
- cocoaChina中整理的知识点-对文件重新命名-利于查阅
- 路径标记语法 in Windows Presentation Foundation(WPF)
- airflow+k8s 多用户-分布式-跨集群-容器化调度
- reverse函数中的begin和end迭代器
- CuteFTP Pro 8.3.4 最新破解绿色版
- 类似这种问题解决方法 version `CXXABI_1.3.8' not found (required by ragel)'
- 大数据-经典案例统计求和
- 美国迈阿密二手房房价预测
- 本周最新文献速递20211128
- 农村淘宝年货节开20条品牌大街,1分钱买高品质牛奶!
- android 屏蔽wifi功能,Android:若wifi未开启给出相应弹框
- 实时传输协议——RTP协议
- 不写情书,程序员为什么还要学写作?
- 相对于石墨烯来说,氧化石墨烯中大量含氧官能团的存在使之具有优异的亲水性和高度的化学可协调性
- 关于代码家(干货集中营)共享知识点汇总系列——App
- ModScan32使用基础
- wemall app商城源码中基于JAVA的Android异步加载图片管理器代码