2017-01-26 37 views
0

我有两个不同的arrayforeach loop所以我决定将它们合并到一起运行到foreach loop但它只返回数组的最后一个值。array_combine只返回上一个值

阵列1:$FileType

Array 
(
    [0] => image/png 
    [1] => image/png 
    [2] => image/png 
    [3] => image/png 
    [4] => image/png 
    [5] => image/png 
) 

阵列2:$FileName

Array 
(
    [0] => post2.png 
    [1] => post5.png 
    [2] => post6.png 
    [3] => post7.png 
    [4] => post8.png 
    [5] => post11.png 
) 

这是我的代码:

foreach(array_combine($FileType,$FileName) as $Type => $Name){ 
       echo $Type .":". $Name; 
      } 

它只返回一个值

返回:

image/png:post11.png 

回答

2

这不是如何array_combine作品。

可以简单地做

foreach($FileName as $id=>$Name) 
    { 
     echo $FileType[$id] .":". $Name; 
    } 

假定两个阵列是相同的尺寸和相同的密钥

4

的你不能在同一键多次具有在阵列中。

而是执行此操作:

foreach (array_combine($FileName, $FileType) as $Name => $Type) { 
     echo $Type .":". $Name; 
} 
+0

@HankyPanky https://eval.in/724548 – apokryfos

+0

我认错:d +1 –

+0

我换的文件名与文件名,因为文件类型“似乎是”独一无二的。由于变量名称相同,因此很容易遗漏。 – apokryfos