如何檢查PHP變量是否是數組? $ value是我的PHP變量以及如何檢查它是否是數組?如何識別PHP變量是否爲數組
0
A
回答
8
echo is_array($ variable);
3
PHP有功能命名is_array($變種),返回布爾以指示參數是否是陣列或不 http://ir.php.net/is_array
1
is_array - 檢測變量是否是一個數組
0
我在這裏添加了一個遲到的答案,因爲我認爲如果人們使用多個數組檢查,我有更好的解決方案。
如果你只是檢查一個數組,然後使用PHP的is_array()
做這項工作就好了。
if (is_array($users)) {
is an array
} else {
is not an array
}
但是,如果您正在檢查多個陣列 - 在例如環 - 再有就是這個一個更好的表演方案,使用強制:
if ((array) $users !== $users) {
// is not an array
} else {
// is an array
}
證明
如果你運行這個性能測試,你會看到相當的性能差異:
<?php
$count = 1000000;
$test = array('im', 'an', 'array');
$test2 = 'im not an array';
$test3 = (object) array('im' => 'not', 'going' => 'to be', 'an' => 'array');
$test4 = 42;
// Set this now so the first for loop doesn't do the extra work.
$i = $start_time = $end_time = 0;
$start_time = microtime(true);
for ($i = 0; $i < $count; $i++) {
if (!is_array($test) || is_array($test2) || is_array($test3) || is_array($test4)) {
echo 'error';
break;
}
}
$end_time = microtime(true);
echo 'is_array : '.($end_time - $start_time)."\n";
$start_time = microtime(true);
for ($i = 0; $i < $count; $i++) {
if (!(array) $test === $test || (array) $test2 === $test2 || (array) $test3 === $test3 || (array) $test4 === $test4) {
echo 'error';
break;
}
}
$end_time = microtime(true);
echo 'cast, === : '.($end_time - $start_time)."\n";
echo "\nTested $count iterations."
?>
結果
is_array : 7.9920151233673
cast, === : 1.8978719711304
+0
對不起,但我會堅持`is_array`。 **它非常精確地描述了它的作用。**在單次調用中保存的幾微秒不值得源代碼混淆。如果你在半年內再次看到這些代碼,你會在這裏試圖做的WTF。 – deceze 2014-07-25 15:57:40
相關問題
- 1. PHP數組變量聲明爲別名
- 2. 變量不識別PHP POO
- 3. 檢查變量是否爲數組
- 4. 識別數組是否發生了變化的最快方法
- 5. 如何識別數據是否有變化?
- 6. 如何讓JavaScript識別對象是否在數組中?
- 7. 識別C變量
- 8. PHP中未識別的變量
- 9. jQuery中未識別的PHP變量
- 10. 識別php未使用的變量
- 11. 如何識別登錄表單變量
- 12. 如何強制LESS(css)識別變量?
- 13. 如何識別模板參數是否爲std :: complex?
- 14. 確定變量是否等於數組中的任何變量php
- 15. PHP - 可變變量或數組爲()
- 16. php notContainedIn無法識別數組參數
- 17. 識別PHP未使用和未變量的變量昇華
- 18. 如何識別ESC是否被按下?
- 19. 如何識別是否禁用了Cookie
- 20. 如何將數組值變爲變量?
- 21. 如何檢查是否變量是在PHP字母或數字?
- 22. PHP:變量(數組)是函數嗎?
- 23. PHP變量數組
- 24. PHP數組變量
- 25. PHP數組變量
- 26. 如何識別重新定義的變量或陰影變量
- 27. PHP codeigniter如何創建變量數組
- 28. 如何獲取PHP變量數組值?
- 29. 如何檢查變量是否爲CFString?
- 30. 如何檢查變量是否爲空?
OH來吧! RTFM。 – mpen 2009-07-16 05:58:53