加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 通过三元表达式设置非空时的值

发布时间:2020-12-13 16:49:51 所属栏目:PHP教程 来源:网络整理
导读:我有一个非常快的问题: 我从Excel工作表中读取数据,并希望将其转换为关联数组.但有时在某些细胞中没有给出值.所以,如果发生这种情况,我想将数组的值设置为0. 现在我用三元运算符这样做,我很高兴我今天发现了: (isset($excel-sheet[0]['cells'][$row][$valu
我有一个非常快的问题:

我从Excel工作表中读取数据,并希望将其转换为关联数组.但有时在某些细胞中没有给出值.所以,如果发生这种情况,我想将数组的值设置为0.

现在我用三元运算符这样做,我很高兴我今天发现了:

(isset($excel->sheet[0]['cells'][$row][$value]) ? $excel->sheet[0]['cells'][$row][$value] : 0)

在这种情况下,是否有缩短重复的意愿?它的工作原理但不是很漂亮:(

解决方法

虽然不推荐这样做,但我会采用以下方式(PHP 5.3):

(@$excel->sheet[0]['cells'][$row][$value] ? : 0);

错误抑制操作符很乱,但在这种情况下,您唯一要注意的是关于未定义变量的众所周知的通知.

另一个选项(如álvaro G. Vicario所述)可以是对int的简单转换(因为NULL转换为0):

(int)@$excel->sheet[0]['cells'][$row][$value];

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读