小编tha*_*guy的帖子

关联数组中的PHP三元语句来设置键和值?

我一直在搜索和测试一段时间,但是我无法找到我想要完成的事情,就像我正在进行的那样.

我想基于三元语句在定义数组时向数组添加键/值对.

Array(
    'Item 1' => 'Some value',
    (FALSE)? NULL : 'Item 2' => 'Another Value'
)
Run Code Online (Sandbox Code Playgroud)

我的预期/想要的行为是结果:

Array (
  [Item 1] => Some value
  [Item 2] => Another Value
)
Run Code Online (Sandbox Code Playgroud)

当陈述是真的时候:

Array(
    'Item 1' => 'Some value',
    (TRUE)? NULL : 'Item 2' => 'Another Value'
)
Run Code Online (Sandbox Code Playgroud)

产量:

Array (
  [Item 1] => Some value
)
Run Code Online (Sandbox Code Playgroud)

但相反,我得到:

Array (
  [Item 1] => Some value
  [] => Another Value
)
Run Code Online (Sandbox Code Playgroud)

这导致问题,因为A)我不希望第一个元素存在于第一位和B)False条件值被分配给True条件值(在这种情况下为NULL,它将键设置为NULL [])

这非常奇特.我唯一的选择是使用标准的if(){}语句,如果条件为假(通过使用!),则将元素弹出到数组中?

注意:对于第2项具有空值是不可接受的,而如果初始条件为真,则根本不存在任何元素.

任何帮助将不胜感激!

php arrays ternary-operator

9
推荐指数
1
解决办法
7254
查看次数

标签 统计

arrays ×1

php ×1

ternary-operator ×1