$array_test = array("0"=>1,"1"=>1,"2"=>5,"3"=>1,"4"=>1,"5"=>3,"6"=>1,"7"=>2);
foreach ($array_test as $key => $value){
echo $key ."=>". $value."<br>";
}
echo "<br><br>";
$p = 1; //定义你要删除的值
$i = 0;
$value_test = reset($array_test);
while ($value_test){
if ($value_test != $p){
$array_c[$i] = $value_test; //生成新的数组
$i++;
}
$value_test = next($array_test);
}
foreach ($array_c as $key => $value){
echo $key ."=>". $value."<br>";
}
foreach ($array_test as $key => $value){
echo $key ."=>". $value."<br>";
}
echo "<br><br>";
$p = 1; //定义你要删除的值
$i = 0;
$value_test = reset($array_test);
while ($value_test){
if ($value_test != $p){
$array_c[$i] = $value_test; //生成新的数组
$i++;
}
$value_test = next($array_test);
}
foreach ($array_c as $key => $value){
echo $key ."=>". $value."<br>";
}
解决方案 »
- 做了一个公告发表例子大家都进来看看这是什么原因造成的错误
- 求一个抽取链接的正则表达式
- 采用apahce的mod_write,url中包含中文会出现乱码(找了好久都没能解决)
- 如何输出数据库的文件?
- sublime text2 保存php文件提示“无法启动此程序,因为计算机中丢失php_pdo.dll 尝试重新安装该程序以解决此问题”
- vBulletin 3.0.0 的快速回复在哪里?没有掉了么?
- 在访问页面的时候,如何显示报错信息?
- 请帮忙!!菜鸟级问题!!
- 如何用PHP做一个http的服务器上传下载文件?
- CI框架下用存储过程后不能再进行其他查询
- 关于连接数据库问题
- php高级应用动态创建函数
$array_test=array('0'=>1,'1'=>1,'2'=>5,'3'=>1,'4'=>1,'5'=>3,'6'=>1,'7'=>2);
$array_test=preg_grep('/1/',$array_test,PREG_GREP_INVERT);print_r($array_test);//不重新索引
print_r(array_values($array_test));//重新索引
?>
手册上怎么没找到??
preg_grep
(PHP 4, PHP 5)preg_grep -- 返回与模式匹配的数组单元
说明
array preg_grep ( string pattern, array input [, int flags] )preg_grep() 返回一个数组,其中包括了 input 数组中与给定的 pattern 模式相匹配的单元。
flags 可以是以下标记:
PREG_GREP_INVERT
如果传递入此标记,preg_grep() 会返回输入数组中不匹配给定 pattern 的单元。本标记自 PHP 4.2.0 起可用。
自 PHP 4.0.4 起,preg_grep() 返回的结果使用从输入数组来的键名进行索引。如果不希望这样的结果,用 array_values() 对 preg_grep() 返回的结果重新索引。
$array_1 = array(1,1,5,1,1,3,1,2);
$array_2 = array(1);
print_r(array_diff($array_1,$array_2));然后重新建下索引