【问题标题】:PHP convert check to use ternary operatorPHP将检查转换为使用三元运算符
【发布时间】:2019-10-26 21:59:41
【问题描述】:

我正在尝试将文件的现有检查转换为使用三元运算符。我原来的支票是这个...

if (isset($_FILES["file"])) {
    echo '7';
};

这工作正常,我使用三元运算符的版本看起来像这样......

isset($_FILES['file']) ? $_FILES['file'] : 7;

我收到错误消息...

未定义的索引:文件

为什么会这样,我哪里出错了?

【问题讨论】:

  • 试试echo $result = (isset($_FILES['file'])) ? 7 : 'no file uploaded';。将返回值分配给变量和echo它,或者print_r它(在$_FILES的情况下)
  • @AlivetoDie 没有$result 位,不是吗? (如果只是回声)
  • @treyBake 正确,但我使用的变量可能是 OP 想在他的代码中的其他地方使用它
  • 可能线程重复。检查here

标签: php ternary-operator


【解决方案1】:

这段代码没有出现异常

<?php
error_reporting(E_ALL);
echo isset($_FILES['file']) ? $_FILES['file'] : 7;

点击运行:https://3v4l.org/PtTmm#output

请检查导致错误的位置。

【讨论】:

猜你喜欢
  • 2015-03-25
  • 1970-01-01
  • 2021-02-22
  • 1970-01-01
  • 1970-01-01
  • 2014-01-21
  • 2021-03-17
  • 2015-02-07
  • 2017-08-26
相关资源
最近更新 更多