×

phpinarray array

Php中 in_array 问题?关于PHP in_array判定的疑问,请高手解答

admin admin 发表于2022-06-14 19:13:48 浏览110 评论0

抢沙发发表评论

Php中 in_array 问题


看了下,你这是最常见的错误!

$a = array(1,2,3,4,5,6);
if(in_array(2,$a)){
echo ’2存在’;}
else
{ echo ’2不存在’;}


$b = ’1,2,3,4,5,6’;
$bb = array($b);
if(in_array(2,$bb)){
echo ’2存在’;}
else
{ echo ’2不存在’;}

看到区别了吗?

//你打印出你$a 和打印你的$bb你会发现什么?
$a = array(0=》’1’,1=》’2’,2=》’3’,3=》’4’,4=》’5’,5=》’6’);
$bb = array(0=》’1,2,3,4,5,6’);
//看到了吗  in_array()是用来判断某个字符串是存在数组中的值中,必须和数组的值相同 
in_array();

关于PHP in_array判定的疑问,请高手解答


这是因为在比较时,因为忽略了类型比较,为了和布尔型true比较,程序将‘b’转换为布尔型,值为true,所以结果为true
像这种情况还有很多
比如$test = 0;in_array(’b’, $test)也返回true;‘b’和0比较需要把‘b’转换为int型,所以转换为0,和0比较的true;
这都是因为忽略了类型的比较
in_array的第三个参数设为true,表示全等比较,也就是考虑类型
-array

帝国cms在点击全部刷新的时候出现Warning: array_merge() [function.array-merge]: Argument


1.请先确认“w1d2c3o4m5.phome_ecms_”是否存在?
2.Warning: array_merge() [function.array-merge]: Argument #2 is not an array in D:\website\wd120\e\class\functions---警告的处理
在functions.phpon line 2008行找到该段代码做如下示例更改即可:
调试PHP代码是出现如下错误:
Warning: array_merge() [function.array-merge]: Argument #1 is not an array in /catalog/admin/customers.php on line 782
Warning: array_merge() [function.array-merge]: Argument #2 is not an array in /catalog/admin/customers.php on line 784
解决这几个array_merge() 错误, 只需找到并编辑你的admin/customers.php 文件:
找到这两行:
$customer_info = array_merge($country-》fields, $info-》fields, $reviews-》fields);
$cInfo_array = array_merge($customers-》fields, $customer_info);
修改为:
$customer_info = array_merge((array)$country-》fields, (array)$info-》fields, (array)$reviews-》fields);
$cInfo_array = array_merge((array)$customers-》fields, (array)$customer_info);
注意:望你能举一反三,祝成功。
-phpinarray