http://docs.php.net/manual/zh/function.array-keys.php
<? $x=array("1"=>"aa","2"=>"bb","3"=>"cc","4"=>"bb"); $y1=array_keys($x,bb,false); $y2=array_keys($x,bb,true); print_r($x); print_r($y1); print_r($y2);?>
看看这个:http://baike.baidu.com/view/4068562.htm赫然看开朗
改成这样:$y2=array_keys($x,"bb",true); 就对了
程序为什么出错了?
因为 bb 不是常量,而你又没有用引号括起
第三个参数指定是否检查数据类型
strict
判断在搜索的时候是否该使用严格的比较(===)。
出错是因为 $y1=array_keys($x, bb,false); 这里的bb没加引号,php首先会认为它是一个常量,而你的代码中没有常量,所以就报错了。
第三个参数是根据类型返回带有指定值的键名,
$x=array("1"=>"111111","2"=>"bb","3"=>"cc","4"=>"bb");
$y1=array_keys($x,111111,true);//将不再返回数据(原数组里“111111”是字符串类型,而这里给的是数字类型)
报错是因为字符串要用单引号或双引号
$y1=array_keys($x,"bb",false);
$y2=array_keys($x,"bb",true);
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号