2014-10-17 156 views
0

我知道这可能很简单,但我无法弄清楚我出错的地方。基本上我有2个静态PHP数组:Laravel输入::始终返回true

$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的输出显示输入::已被输出两次的输入的数目。因此,如果我选择所有可能的输入(即5),它将输出它们每个两次总共10个值。这使我相信Input ::每次都会评估真实性,尽管它不应该达到我所知道的程度。

任何帮助表示赞赏!

+0

你在问什么?你有任何输入设置或不在这里?请在问题中添加详细信息 – 2014-10-17 20:14:20

回答

0

其实,我想它了!

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

1

PHP可能会认为$arr2.$arr1是一个串联:

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

尝试在你点符号使用这样的:

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

一个很好的建议,没有解决我的问题,但它不是我意识到的 – NoPathInParticular 2014-10-17 20:21:30

相关问题