該語言是PHP。我有一個foreach($ a爲$ b)和另一個foreach($ c爲$ d => $ e)。我如何將他們結合在一起閱讀。我厭倦了foreach(($ a爲$ b)& &($ c爲$ d => $ e)),但那是垃圾。如何將兩個foreach循環合併爲一個
6
A
回答
0
這將做你想做的事。在整個循環過程中,它將同時推進兩個陣列。您可以隨時break
如果手動$c
是不同的大小比$a
,你需要基於陣列的尺寸打破邏輯:
foreach($a as $b)
{
list($d,$e) = each($c);
//continue on with $b, $d and $e all set
}
each()
將推進$c
數組指針在每次迭代。
3
我不明白你想要做什麼。如果你想在其他以後,以達到他們一個只使用兩個循環:
foreach ($a as $b) { ... }
foreach ($c as $d => $e) { ... }
如果從$a
和$c
希望所有的組合:
foreach ($a as $b) {
foreach ($c as $d => $e) {
// do stuff
}
}
我想你可以這樣做:
foreach (array_merge($a, $c) as $k => $v) {
...
}
但我不一定建議。
22
您可能會感興趣SPL's MultipleIterator
例如
// ArrayIterator is just an example, could be any Iterator.
$a1 = new ArrayIterator(array(1, 2, 3, 4, 5, 6));
$a2 = new ArrayIterator(array(11, 12, 13, 14, 15, 16));
$it = new MultipleIterator;
$it->attachIterator($a1);
$it->attachIterator($a2);
foreach($it as $e) {
echo $e[0], ' | ', $e[1], "\n";
}
打印
1 | 11
2 | 12
3 | 13
4 | 14
5 | 15
6 | 16
7
1)第一種方法
<?php
$FirstArray = array('a', 'b', 'c', 'd');
$SecondArray = array('1', '2', '3', '4');
foreach(array_combine($FirstArray, $SecondArray) as $f => $n) {
echo $f.$n;
echo "<br/>";
}
?>
或2)方法二
<?php
$FirstArray = array('a', 'b', 'c', 'd');
$SecondArray = array('1', '2', '3', '4');
for ($index = 0 ; $index < count($FirstArray); $index ++) {
echo $FirstArray[$index] . $SecondArray[$index];
echo "<br/>";
}
?>
相關問題
- 1. 如何結合兩個foreach循環合併爲一個
- 2. 如何合併這兩個foreach循環(只用一個)?
- 3. 如何將這兩個循環合併爲一個?
- 4. 如何將兩個for循環合併爲一個(in java)
- 5. PHP中的兩個foreach循環合併成一個?
- 6. 將兩個主循環合併爲一個node.js進程
- 7. php函數並將兩個循環更改爲一個循環?
- 8. 結合兩個「的foreach」循環
- 9. 將不同foreach循環的值合併到一個數組中
- 10. 將模型中的數據合併到一個foreach循環中?
- 11. 如何將兩行合併爲一個?
- 12. 如何將foreach循環限制爲四個循環
- 13. 如何將一個循環合併到一個bash別名中
- 14. 兩個foreach循環合併發送電子郵件
- 15. 如何將兩個數組組合成一個循環?
- 16. 如何foreach循環PHP合併值
- 17. 如何將兩個集合合併爲一個
- 18. 將五個Do直到循環合併爲一個循環Excel VBA
- 19. 將兩個查詢合併爲一個
- 20. 將兩個佈局合併爲一個
- 21. 將兩個Feed合併爲一個
- 22. RxJava2將兩個Flowables合併爲一個
- 23. 將兩個查詢合併爲一個
- 24. 將兩個表合併爲一個
- 25. Mysql將兩個表合併爲一個
- 26. 將兩個紋理合併爲一個
- 27. 將兩個Artifactories合併爲一個
- 28. 將兩個查詢合併爲一個
- 29. 如何創建一個foreach循環?
- 30. 將多個While循環合併爲一個
這就是我今天所看到的代碼中最有趣的和平。再加上一個。數組的長度是否相等,或者在某個點上是否停止迭代其中的一個? – 2010-03-31 23:08:40
這取決於您是否設置MultipleIterator :: MIT_NEED_ANY或MultipleIterator :: MIT_NEED_ALL標誌。使用MIT_NEED_ALL時,如果任何內部迭代器沒有更多元素,則迭代器將停止。使用MIT_NEED_ANY時,只要至少有一個內部迭代器具有另一個元素,則所有其他項都將變爲NULL,迭代器就會繼續。 MIT_NEED_ALL是默認值。 – VolkerK 2010-03-31 23:34:42
謝謝你的信息,非常酷! – 2010-03-31 23:48:26