栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何编写PHP三元运算符

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何编写PHP三元运算符

三元不是您想要的一个很好的解决方案。它不会在您的代码中可读,并且有很多更好的解决方案可用。

为什么不使用数组查找“ map”或“ dictionary”,如下所示:

$vocations = array(    1 => "Sorcerer",    2 => "Druid",    3 => "Paladin",    ...);echo $vocations[$result->vocation];

此应用程序的三元最终看起来像这样:

echo($result->group_id == 1 ? "Player" : ($result->group_id == 2 ? "Gamemaster" : ($result->group_id == 3 ? "God" : "unknown")));

为什么这样不好?因为-作为一条长长的线,如果这里出现问题,您将不会获得有效的调试信息,因此长度很难读取,加上多个三元组的嵌套感觉很奇怪。

标准三元级 简单易读,看起来像这样:

$value = ($condition) ? 'Truthy Value' : 'Falsey Value';

要么

echo ($some_condition) ? 'The condition is true!' : 'The condition is false.';

三元实际上只是一种编写简单

if else
语句的便捷方法。上面的三元示例与:

if ($some_condition) {    echo 'The condition is true!';} else {    echo 'The condition is false!';}

但是,用于复杂逻辑的三元很快就变得不可读,因此不再是简短的做法。

echo($result->group_id == 1 ? "Player" : ($result->group_id == 2 ? "Gamemaster" : ($result->group_id == 3 ? "God" : "unknown")));

即使使用了一些细心的格式将其分布在多行中,也不是很清楚:

echo($result->group_id == 1     ? "Player"     : ($result->group_id == 2         ? "Gamemaster"         : ($result->group_id == 3  ? "God"  : "unknown")));


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/430456.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号