有沒有方法可以在不使用sizeof($array)
和/或count($array)
的情況下查找數組的大小?數組的大小
Q
數組的大小
1
A
回答
4
如果你想知道一個數組中元素的個數,有兩種解決方法:
- 使用
count()
功能 - 這是最好的主意 - 循環執行的所有項目,遞增計數器 - - 這是一個壞主意。
舉一個例子使用的第二個想法:再次
$num = 0;
foreach ($array as $item) {
$num++;
}
echo "Num of items : $num";
但是,:好主意!
編輯:只是爲了好玩,這裏的循環陣列上的另一個例子,不過,這一次,使用array_map()
和一個匿名函數(需要PHP> = 5.3):
$array = array(1, 2, 3, 4, 5);
$count = 0;
array_map(function ($item) use (& $count) {
$count++;
}, $array);
echo "Num of items : $count";
這裏也是一個壞主意 - 即使很有趣^^
2
您可以使用foreach
和手動計數數組中元素的個數,但我不明白爲什麼你會想,因爲這將提供比使用無論是sizeof
或count
功能沒有優勢。
+0
沒有特別的原因。我只是想一次手動完成。謝謝 – Autolycus 2011-03-11 15:13:03
2
即使沒有關於做foreach或其他任何事情的問題......那麼array_reduce:
array_reduce($array, function($count, $element) {
return $count + 1;
}, 0);
只是爲了不同的東西:d
+0
+1我總是喜歡「僅僅爲了不同的東西」的答案,特別是當他們聰明時。當然PHP> = 5.3 – 2011-03-11 09:03:10
相關問題
- 1. 組數組大小
- 2. 數組大小
- 3. 數組大小
- 4. 數組大小
- 5. $ _POST最大數組大小
- 6. 最大數組大小
- 7. Python:最大數組大小?
- 8. Scipy.linalg.solve最大數組大小
- 9. 大小C數組
- 10. Java數組大小
- 11. C++數組可變大小的數組
- 12. 計算數組的大小
- 13. 計算數組的大小
- 14. 確定數組的大小
- 15. 固定大小的數組
- 16. 可變大小的數組
- 17. fgets中的數組大小()
- 18. Java中的數組大小
- 19. 限制數組的大小?
- 20. VB.NET中的數組大小
- 21. 特定數組的大小
- 22. 獲取數組的大小
- 23. 數組的大小2^25
- 24. 大小爲0的數組
- 25. 計數perl數組大小
- 26. Laravel - 減小數組的大小
- 27. 減小數組列表的大小
- 28. 數組中值的最大大小PHP
- 29. 在vb.net中的最大數組大小
- 30. 如果數組的大小大於1
什麼,就是你不能同時使用功能的限制? – diEcho 2011-03-11 06:42:32
如果已經有2個功能,爲什麼還要其他?你有什麼問題嗎? – 2011-03-11 06:44:07
@diEcho。我第二個問題 – Ben 2011-03-11 06:44:23