当前位置: 首页 > news >正文

3g微网站是什么徐州圣道网络科技有限公司

3g微网站是什么,徐州圣道网络科技有限公司,微网站设计与制作,网站开发形式选择概况 三元运算符的功能与“if…else”流程语句一致。 在一般情况下,三元操作替换if条件语句可以精简代码,并且更为直观,但是在下面的情况中使用三元操作将会返回警告。 借图: 案例 比如原代码: class classA{publ…

概况

三元运算符的功能与“if…else”流程语句一致。

在一般情况下,三元操作替换if条件语句可以精简代码,并且更为直观,但是在下面的情况中使用三元操作将会返回警告。

借图:

在这里插入图片描述

案例

比如原代码:

class classA{public static function &get_instance($param='')	{...		if(isset(self::$_instance->$param)){return self::$_instance->$param;}else{return NULL;}	}
}

而一旦改写三元操作的时候:

class classA{public static function &get_instance($param='')	{...		return isset(self::$_instance->$param) ? self::$_instance->$param : NULL;}
}

系统会提示:
PHP Notice: Only variable references should be returned by reference in...

分析

为什么呢?

  • 为什么第一种写法正确?
    • 函数声明为返回引用
    • 对象属性也是引用
    • 如果$param为空,直接返回对象实例,即返回一个对象引用
    • 否则使用if分支,每个分支都返回对象属性引用NULL,都符合引用要求
  • 为什么第二种写法出错?
    • 问题在使用三元操作符
    • 三元操作符整体返回一个值,而不是引用
    • 此时虽然内容是属性,但类型上仍是个值而不是引用
    • 所以不匹配函数声明为返回引用这个要求

总结

  • 函数声明返回引用,每个返回节点都必须返回真正的变量引用
  • 第一种用if分支,每个分支都返回引用
  • 第二种三元操作符整体返回一个值,就算内容是引用也不算
  • 所以正确应该是第一种if分支写法,而不是使用三元操作符。

NULL本身不是一个变量,所以严格来说返回NULL也不算返回变量引用。
但是NULL作为一个特殊值,它可以作为非引用值正常返回,不会报错。

在这里插入图片描述

http://www.yayakq.cn/news/358456/

相关文章:

  • 网站上海备案网站建设怎么做
  • 网站建设的岗位职责线上视频剪辑培训班
  • sns社交网站 有哪些单页网站如何优化
  • html做的好看的网站网站默认图片素材
  • 建设网站公司兴田德润i优惠吗本网站只做信息展示不提供在线交易
  • 网站建设三剑客精准营销名词解释
  • 百度推广 做网站房产中介网站开发费用
  • 麦壳云网站建设模板建站和自助建站
  • 好看的公司网站软件开发工资一般多少深圳
  • 聚合猫网站建设凡客诚品官网的关闭原因
  • 电子商务网站建设目的今天的新闻内容
  • 中国建设银行网站个人客户官网带登录网站模板
  • 学校网站建设所使用的技术滕州市做淘宝网站的
  • 陕西省西安市建设局网站国际新闻最新消息战争
  • 网站呢建设深圳品牌网站设计
  • 卡盟做网站厦门网站建设价
  • seo推广的网站和平台有哪些提升网站建设
  • 做淘宝相关网站免费搭建个人网页
  • 广东装饰公司网站建设网站h5什么意思
  • 祥云平台做网站好不好鲁棒导航
  • 自己建个网站做优化wordpress订阅插件
  • 常州 网站设计数学教学网站开发
  • 如何做更改网站的图片知名营销网站
  • 开发区网站建设方案陕西网站制作电话
  • 服装加工厂网站建设方案计划书深圳宝安网站建设500元起价
  • 网站建设流程步骤建网站需成本多少钱
  • 用wordpress做网站教程湖南建设网
  • 合肥生态丽景网站建设wordpress 增加接口
  • 网站后台建设教程下载公司文化墙设计方案
  • 什么系统做网站好淘宝网站的推广方案