从学PHP到现在将近半年时间,今天在李炎恢老师的课程中看到一个这样的语句

class Factory {

static private $_action = null;

static public function setAction() {

eval('self::$_action = new '.ucfirst(isset($_GET['a']) ? $_GET['a'] : 'Index').'Action();');

return self::$_action;

}

}

第五行代码在课程中出现根本没有看懂,就百度查找了一些资料。

第五行代码属于三元运算符的应用。

该代码的含义检测new一个对象,对象是通过三元运算符判断得到。

$Get方法是否接收到东西,如果接收到,就new一个$_Get[]接收到的值,如果没有接收到,就new IndexAction();

举一个简单例子:

$a = 1;

$b = 2;

$c = 3;

$d = $a>$b ? $b : $c;

echo $d;

输出结果为3

简述php三元运算符的使用,PHP 三元运算符的使用相关推荐

  1. JAVA语言运算符(算数运算符、赋值运算符、比较运算符、逻辑运算符、三元运算)

    运算符 JAVA语言中将运算符分为:算数运算符.赋值运算符.比较运算符.逻辑运算符.三元运算符. 算数运算符:算数运算符是对数字进行一系列的加减乘除等的计算,常见的算数运算符如: public cla ...

  2. 【笔记】Java的运算符(赋值运算符号、一元运算符、算术运算符、关系运算符、自增与自减运算符、逻辑运算符、括号运算符、位运算符、三元(三目)运算符)、表达式与语句:简洁表达式

    文章目录 一.运算符 1.赋值运算符号 2.一元运算符 3.算术运算符 4.关系运算符 5.自增与自减运算符 6.逻辑运算符 7.括号运算符 8.位运算符 左移位: 右移位: 9.三元(三目)运算符 ...

  3. php 三元运算符 为空,PHP三元运算符vs空合并运算符

    小编典典 当您的第一个参数为null时,它们基本相同,不同之处在于,E_NOTICE当您有未定义的变量时,null合并不会输出.在PHP7.0迁移的文档有这样一段话: 对于需要将三元数与isset() ...

  4. c语言的运算符表格,C语言教案(运算符和表格达式).ppt

    C语言教案(运算符和表格达式) 运算符与表达式 第二讲 运算符和表达式 引例 概念及分类 优先级和结合性 算术运算 关系运算 逻辑运算 位运算 赋值运算符 逗号运算符 条件运算符 引例 引例 问题 输 ...

  5. C++primer 第 4 章 表达式 4.1基础 4 . 2 算术运算符 4 .3 逻辑和关系运算符 4 . 4 赋值运算符 4 .5 递增和递减运算符 4.6成员访问运算符

    表达式由一个或多个运算对象(operand)组成,对表达式求值将得到一个结果(result) 字面值和变量是最简单的表达式(expression),其结果就是字面值和变量的值.把一个运算符(opera ...

  6. c语言中 amp amp 是位运算符吗,c语言位运算符(c语言位运算符的用法举例)

    C语言中的按位运算符 & | ^ ~ > 分别要怎么用?哪位大虾能详细讲解一下!!. 1.按位运算符就是直接对整数在内存中的二进制位进行操作运算.比如,&&运算本来是一个 ...

  7. python中没有++和--这两个运算符_python为什么没有++和 – – 运算符

    为什么python中没有++和--操作符? python中递增和递减运算符的相关post行为 因为-Python不是C! 这并不是因为它没有意义:把"x++"定义为"x+ ...

  8. Go 学习笔记(5)— 算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符、取地址和指针运算符

    1. Go 运算符分类 Go 语言内置的运算符有: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 其他运算符 1.1 算术运算符 下表列出了所有Go语言的算术运算符.假定 A 值为 10, ...

  9. C++:运算符重载函数之成员运算符重载函数

    5.2.3 成员运算符重载函数 在C++中可以把运算符重载函数定义为某个类的成员函数,称之为成员运算符重载函数. 1. 定义成员运算符重载函数的语法形式 (1)在类的内部,定义成员运算符重载函数的格式 ...

  10. python变量运算符_Python(三) 变量与运算符

    一.什么是变量 变量 = [1,2] 二.变量的命名规则 字母,数字,下划线,首字母不能是数字 系统关键字 不能用在变量名中 保留关键字 区别大小写 a=1,   a='1',   a=(1,2),  ...

最新文章

  1. linux命令格式,常用10个LINUX命令说明
  2. 数据结构Java11【图结构概述、图遍历原理(BFS\DFS)、图遍历代码实现】
  3. 揭密微信《跳一跳》小游戏那些外挂
  4. 计算机组成原理期末复习题
  5. 使用SaxParser和完整代码进行XML解析
  6. 《时间序列分析及应用.R语言》第十一章阅读笔记
  7. JS小技巧 ----- 将类数组 / 字符串转为数组的几种方式
  8. 这款耳机性价比值得你看一下
  9. 贰零零肆年拾月拾伍日
  10. C#安装本地nupkg包
  11. 2022年除了深度学习,人工智能算法有可能突破的10个方向
  12. matlab 12脉波变压器,12脉波整流电路MATLAB-Simulink仿真及谐波分析.pdf
  13. 【架构风格 架构模式 设计模式 概念】
  14. 交换机 Port-Channel(端口汇聚)的 配置
  15. 第二人生,Second Life
  16. 西瓜书 第九章 聚类算法
  17. Chakra-UI 学习笔记
  18. 消失的“金九银十” 互联网的下一个五年在哪里?
  19. visual studio怎么让button一直生效_异地投保怎么做?看完你就知道
  20. 超全!常用的 70 个数据分析网址

热门文章

  1. PHP中的错误控制运算符
  2. Springboot日志log4j的配置
  3. nginx和tomcat之间的简单配置
  4. 基于物品的协同过滤ItemCF的mapreduce实现
  5. java二进制反转_Java实现 LeetCode 190 颠倒二进制位
  6. 2016年成熟亚太地区公共云服务市场规模将达到81亿美元
  7. 华为NFV实验室一周年:打造开放合作生态链 加速NFV产业化
  8. Spring中的AOP——在Advice方法中获取目标方法的参数(转)
  9. JSP第十四次课:JSP项目开发高级操作2---在线编辑器应用及前台首页显示商品
  10. 一个IP绑定多个域名(虚拟主机)设置方法