我如何有条件地在PHP中包含元素数组?

问题描述:

我想知道如何有条件地有数组元素或根本不使用以下样式。我从一般意义上认识到这样做会很微不足道...... 所以我真正想要的是根据某种条件根本不能拥有特定的元素,到目前为止,我可以使其成为一种价值或另一种价值。我如何有条件地在PHP中包含元素数组?

我的问题背后的实际动机是在Yii2有条件地显示或不显示[ActionColumn][1]。但现在我更加好奇。

谢谢!

<?php 
$middle_name = "James"; 
$full_name = [ 
    'Robert', 
    (!empty($middle_name)) ? $middle_name : 'NA', 
    'Fischer', 
]; 
?> 
+0

不能使用此语法做到这一点。如果符合条件,则放置一个'if'将包含此信息,或事先将'$ middle_name'修改为''NA''。 – Havenard

+0

@Havenard感谢您的反馈,我想知道是否是这种情况。你认为它是一种语言限制,还是你不应该以这种方式去做的事情? – johnsnails

+0

@ johnsnails,编写一个函数或类 –

试试这个

<?php 
    $middle_name = "James"; 
    $full_name[] = 'Robert'; 

    if ($middle_name == '' || $middle_name == null) { 
     $full_name[] = 'NA'; 
    } else { 
     $full_name[] = $middle_name; 
    } 

    $full_name[] = 'Fischer'; 
?> 
+0

知道这种方法,但它不是完全适合我实际设置元素的方式,因为它是另一个数组内的数组。但意识到你所指的一般方法。 – johnsnails

+0

您可以将此添加到您的问题,然后我可以帮助它 – harryparkdotio