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. 检查数组是否为空元素
- 4. 检查数组元素是否存在
- 5. 检查数组是否有空元素
- 6. 检查数组元素是否为键
- 7. 检查数组元素是否存在
- 8. 检查数组元素是否为空
- 9. 检查PHP数组元素
- 10. 如何检查一个属性是否在一个元素中?
- 11. 如何检查一个数组的元素是否在另一个数组中?
- 12. 检查元素是否在一个数组中,并增加
- 13. 写了一个检查元素是否在数组
- 14. 检查一个元素是否存在
- 15. 数组是否有一个元素等于元素?
- 16. 检查一个属性是否属于PHP
- 17. php - 如何检查第一个数组中是否存在第一个数组中的至少一个元素
- 18. 检查数组的元素在PHP的另一个数组中
- 19. 如何检查数组中的一个元素是否与同一数组中的另一个元素匹配?
- 20. 检查一个元素是否已经存在于javascript中的数组中
- 21. 检查元素是否获得属性
- 22. 检查元素是否有属性
- 23. 检查数组中的元素是否存在于另一个数组中的PHP
- 24. php通过会话数组检查元素是否存在
- 25. GNU-make检查元素是否存在于列表/数组中
- 26. 检查元素是否是选中的最后一个元素
- 27. 检查像素是否属于图像
- 28. 检查一个元素是否有属性python3
- 29. PHP检查数组值是否唯一
- 30. python:检查numpy数组是否包含另一个数组的任何元素
您使用的是PHP 3.xx吗? – federicot
迭代阵列。 – hjpotter92
你使用的是什么版本? – Vector