php 三元运算符使用说明和写法

PHP三元运算的2种写法代码实例
首先,我们现在看一个简单的例子:

代码如下:
<?php  //写法一:
  $a = 2;
  ($a == 1) ? $test = "我们" : $test = "你们";
  echo $test;
?>

上述例子呢,先判断$a是否为1 如果是 将“我们”这个字符串存入$test变量里然后输出,如果不是 将“你们”这个字符串存入$test变量里然后输出;
上诉例子代码等价于:
代码如下:
<?php  //写法二:
  $a = 2;
  echo $test = ($a == 1) ? "我们" : "你们";

  #写法三
  if($a == 1){
     $test="我们";
  }else{
     $test="你们";
  }
  echo $test;

?>

复杂点例子

$i = 2; echo $i == 2 ? "A" : $i == 1 ? ‘B‘ : ‘C‘;

实际执行顺序是 

($i == 2 ? "A" : $i == 1 )? ‘B‘ : ‘C‘;
相当于A ? ‘B‘ : ‘C‘;

A为真,所以是B

从左向右执行

echo $a == 1 ? ‘one‘ : $a == 2 ? ‘two‘ : $a == 3 ? ‘three‘ : $a == 4 ? ‘foura‘ : ‘other‘;
实际执行顺序是
echo ( ((($a == 1 ? ‘one‘ : $a == 2) ? ‘two‘ : $a == 3 )? ‘three‘ : $a == 4 )? ‘four‘ : ‘other‘); 

//结果是four;
 
时间: 2024-10-19 08:17:13

php 三元运算符使用说明和写法的相关文章

C#中三元运算符的写法以及列表的遍历

C#中三元运算符的写法:三个操作数a1,a2,a3   表达式a1=a2>a3?a2:a3    意思为如果a2>a3,a1=a2,否则 a1=a3 列表的遍历,返回第一个遍历的元素: /// <summary> /// 返回当前栏目的路径,不超过三级 /// </summary> /// <param name="yc"></param> /// <param name="yclist">&l

【小技巧】三元运算符更简介的写法

当三元运算符条件成立时,且结果与条件一致时,可以省略结果. php > $a = 5; php > echo $b = $a ?: 'hello world'; 5 php > $a = 0; php > echo $b = $a ?: 'hello world'; hello world 原文地址:http://blog.51cto.com/phpme/2156376

JavaSE复习日记 : Java操作符\关系运算符\逻辑运算符\赋值运算符\字符串连接符\三元运算符

// Java操作符\关系运算符\逻辑运算符\赋值运算符\字符串连接符\三元运算符 /* * 一 Java操作符 * * Java操作符都有哪些? * +, -, *, /, %, ++, -- * 这里需要注意 a++ 和 ++a 的区别,后面说; */ /* public class Javase{ public static void main(String[] args){ int a = 10; int b = 20; int c = 30; System.out.println( a

三元运算符判断

三元运算符语法: 条件?成立做的事:不成立做的事; 把if else简单化的写法 如果三元运算符的某一部分不需要任何处理,使用:null,undefined(void 0)占位即可 如果需要执行多条语句,用()包起来,每条语句用逗号分开 var num=12; num>10?num++:num--; num>10?num++:null; //多条语句 num>10?(num++,num*=10):num--; console.log(num); var num=0; if(num>

js三元运算符与循环

 三元运算符 语法: 条件?成立做的事情:不成立做的事情:<=>相当于简单的if/else判断(简化写法) var num = 12; if(num>10){ num ++; }else { num--; } => 相当于三元运算符: num > 10? num++ : num--; 特殊情况: //=>如果三元运算符中某一部分成立不需要任何的处理我们用null/underfined/void 0...占位即可 var num=12; num>10?num++ :

三元运算符的嵌套详解:分别在JSTL、JavaScript和Java中

用来完成简单的选择逻辑,即根据条件判断,从两个选择中选择一种执行. 使用格式:(条件表达式)?表达式1:表达式2: 运算规则:条件表达式  值为一个布尔值,当值为true的时候 执行表达式1   否则的话执行表达式2 这种写法可以代替我们一般的if-else-if语句 常见的可以用于下面的几种情况中: JSTL中 <c:forEach items="${page.list}" var="order"> <tr> <td>${ord

java中的三元运算符详解

最近在带领实习生中遇到很多新手问与三元运算符有关的java题目,多数为代码结果题,少数为应用题.鉴于很多资料上对于java三元运算的讲解过于简单,网上的资料与题目也不是很完善,对于结果答案分析不一,故在此总结,当然仅为个人观点,水平有限,不足之处,还请大家多多指出,互相交流学习. 什么是java三元运算符呢?无疑其操作元有三个,第一个是条件表达式,剩余两个为值,条件表达式为真时运算取第一个值,为假时取第二个值. 其示例代码如下:boolean a = 20 < 45 ? true : false

集合和三元运算符

一.三元运算符 如下判断可以使用三元运算更方便的实现: a = 1b = 2 if a > 1: c = aelse: c = b 和下面是一样的: a = 1b = 2#下面这个c = a if a>1 else b 如下两种方法也是一样的:方式一: s=[]nums = list(range(1,11))for i in nums: if i%2==0: s.append(i)print(s)方式二:ss = [i for i in nums if i%2==0]print(ss)#这两种

Java基础——使用三元运算符判断一个数的奇偶性

要求: 使用三元运算符判断一个数的奇偶性 实现代码: /** * 使用三元运算符判断用户输入的一个数的奇偶性 */ import java.util.Scanner; public class Odd_even { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入一个整数:"); long num1 = input.nextLo