2015-06-26 166 views
-1

我有以下數組和循環條件。我無法預覽此輸出。我可以使用多個foreach嗎?

通緝輸出:(這不回答我下面提供的代碼)

emp_name1 = captamerica 
emp_name2 like ironman 

我的PHP代碼:

$filter = array('emp_name1','emp_name2'); 
$condition = array('=','like'); 
$values = array('captamerica','ironman'); 

foreach($filter as $row){ 
    foreach($condition as $row2){ 
     foreach($values as $row3){ 
      echo $row." ".$row2." ".$row3."<br>"; 
     } 
    } 
} 
+0

3個數組是否始終保證具有相同數量的元素,因此總是每個比較值和運算符的組成成員? –

+0

是的,先生。我正在對我想要發生的輸出進行抽樣或想法。 –

回答

1

您需要爲每個陣列具有相同的元素數,這對您的數據而言是正確的。這裏是你需要的:

foreach($filter as $k=>$row){ 
    echo $row." ".$condition[$k]." ".$values[$k]."<br>"; 
} 
+0

這個也有幫助!謝啦!^_^v –

0

只要你在不同的陣列做這件事,你可以做多的foreach。原因是php有內部數組指針,需要在foreach中操作。如果你在同一個數組上執行多個foreach,內部指針會受到干擾。

我沒有得到你所引用的輸出。我得到的是:

emp_name1 = captamerica 
emp_name1 = ironman 
emp_name1 like captamerica 
emp_name1 like ironman 
emp_name2 = captamerica 
emp_name2 = ironman 
emp_name2 like captamerica 
emp_name2 like ironman 
+0

您是否閱讀了對齊/關聯數組鍵的所需輸出?生成2行輸出只需要一個循環,而不是3個嵌套循環中的8行。 –

+0

問題不明確。標題似乎提出了一個問題,也寫錯了。鍵盤上有一個shift鍵。然後,您無法「預覽」輸出並不表示您確實需要輸出。 – Scalable

+0

你是對的老闆。無論如何,我無法找到一個我想要發生的想法。但我仍然在尋找任何信息來源,並找到另一種方式來製作它... –

0

你可以使用多個foraech。但不顯示這個輸出的扭結。

你有3個嵌套循環,每個循環將循環2次,這意味着比echo語句將執行2 * 2 * 2 = 8次。

要打印你想要的拖曳線,你只需要一條for loop聲明。

for($i=0;$i<2;$i++) 
    echo $filter[$i]." ".$condition[$i]." ".$values[$i]."<br>"; 
+0

感謝幫助的人。這是我正在考慮的選項之一。 –

相關問題