1
A
回答
4
使用自定義功能。爲了將來的兼容性,您可以使用function_exists
來檢查您當前使用的PHP版本是否確實有in_array
。
function inArray($needle, $haystack)
{
if (function_exists('in_array')) {
return in_array($needle, $haystack);
} else {
foreach ($haystack as $e) {
if ($e === $needle) {
return true;
}
}
return false;
}
}
+0
我想知道爲什麼接受這種方式,因爲如果沒有函數'in_array',也沒有循環'foreach'。兩者都是在PHP 4的第一個版本中引入的。更好的答案是由dev-null-dweller給出的:檢查函數是否不可用,並且只用相同的名稱定義它,以及基本的千年前PHP。 – Sven
0
如果不檢查哪些功能在哪些版本中可用,並與您使用的版本(我們不是php.net百科全書)進行比較,那麼最好的辦法是回到基礎知識,然後循環查看。
function in_array($val, $array) {
foreach($array as $a) {
if($a === $val)
return true;
}
return false;
}
0
您可以
function my_in_array($ar, $val)
{
foreach($ar as $k => $v)
{
if($v == $val) return true;
}
return false;
}
創建自己的功能,模仿功能,或者如果你是一個關鍵
function my_in_array($ar, $val)
{
foreach($ar as $k => $v)
{
if($k == $val) return true;
}
return false;
}
0
在陣列功能類似下面創建自己:
function my_in_array($value, $arr) {
foreach ($arr as $a) {
if ($a == $value) {
return true;
}
}
return false;
}
2
如果你正在使用的東西比PHP 4,foreach
年長也將不可用,所以你需要堅持list
和each
。也爲了在向前兼容,使用第三個參數進行嚴格比較:
if (!function_exists('in_array')) {
function in_array($needle, $haystack, $strict = false) {
while (list($key, $item) = each($haystack)) {
if ($strict && $needle === $item) {
return true;
} else if (!$strict && $needle == $item) {
return true;
}
}
return false;
}
}
相關問題
- 1. jQuery如何檢查兩個數組元素是否屬於同一個數組
- 2. 檢查一個html元素是否屬於ruby和watir?
- 3. 檢查PHP數組元素
- 4. 檢查數組元素是否存在
- 5. 檢查數組是否有空元素
- 6. 檢查數組是否爲空元素
- 7. 檢查數組元素是否爲鍵
- 8. 檢查數組元素是否爲空
- 9. 檢查數組元素是否存在
- 10. 檢查數組元素是否存在
- 11. 如何檢查一個屬性是否在一個元素中?
- 12. 如何檢查一個數組的元素是否在另一個數組中?
- 13. 寫了一個檢查元素是否在數組
- 14. 數組是否有一個元素等於元素?
- 15. 檢查一個元素是否存在
- 16. php - 如何檢查第一個數組中是否存在第一個數組中的至少一個元素
- 17. 如何檢查數組中的一個元素是否與同一數組中的另一個元素匹配?
- 18. 檢查一個元素是否已經存在於javascript中的數組中
- 19. 檢查元素是否獲得屬性
- 20. 檢查元素是否有屬性
- 21. 檢查數組中的元素是否存在於另一個數組中的PHP
- 22. GNU-make檢查元素是否存在於列表/數組中
- 23. 檢查像素是否屬於圖像
- 24. 檢查一個元素是否有屬性python3
- 25. PHP檢查數組值是否唯一
- 26. 的Javascript:檢查是否從數組中的元素在另一個數組
- 27. 我如何檢查一個元素在php中是否可見?
- 28. 如何檢查一個值是否高於字典元素
- 29. 檢查元素中的class是否等於一個值javascript
- 30. AJV:檢查一個屬性是否等於另一個屬性
您使用的是PHP 3.xx嗎? – federicot
迭代陣列。 – hjpotter92
你使用的是什麼版本? – Vector