Laravel Input ::总是返回true

时间:2014-10-17 20:03:51

标签: php laravel

我知道这可能很简单,但我无法弄清楚我哪里出错了。基本上我有2个静态php数组:

$array1 = array('Apple', 'Orange');
$array2 = array('Purple', 'Green', 'Yellow');

foreach ($array2 as $arr2){
    foreach ($array1 as $arr1){
        if (Input::has($arr2.$arr1)){
            array_push($testArray, $arr1);
        }
    }  
}

$testArray的输出显示Input :: has输出两倍的输入。因此,如果我选择所有可能的输入(即5),它将输出两次,共计10个值。这让我相信Input :: has每次都在评估true,即使它不应该尽我所能。

感谢任何帮助!

2 个答案:

答案 0 :(得分:1)

PHP可能认为$arr2.$arr1是串联的:

if (Input::has($arr2.$arr1)){
    array_push($testArray, $arr1);
}

尝试使用点符号

if (Input::has("{$arr2}.{$arr1}")){
    array_push($testArray, $arr1);
}

答案 1 :(得分:0)

实际上,我想出来了!

如果你碰到这样的事情,不要像我一样陷入那个循环中,看一个或两个更高的循环。我没有在这个循环中初始化我的变量,但另一个循环并没有意识到它几个小时......