| 
       php开发时我们经常会碰到要删除数组中指定指定内容,但数组是特殊变量我们不能直接利用replace进行替换的,需要一些方法来操作,下面我来给大家介绍操作办法. 
如果我们知道数组元素的名字这个就好办了
按键名来删除数组中指定数组元素
实例代码如下: 
	
	- $barray = array('a'=>1,'b'=>2,'wod'=>3,'c'=>4,'abc'=>5); 
 
	- $del ='b'; 
 
	- unset($barray[$del]); 
 
	-  
 
	- Array 
 
	- ( 
 
	-     [a] => 1 
 
	-     [wod] => 3 
 
	-     [c] => 4 
 
	-     [abc] => 5 
 
	- ) 
 
	 
 
如果有多个数组要同时删除,上面办法是解决不了,我们可以利用array_diff函数来操作 
实例代码如下: 
	
	- $a1=array("Cat","Dog","Horse",'dff','dfdf','www'); 
 
	- $a2=array("dff","Horse","Dog"); 
 
	- $a1 = array_diff($a1,$a2); 
 
	- sort($a1); 
 
	- print_r($a1); 
 
	- Array 
 
	- ( 
 
	-     [0] => Cat 
 
	-     [1] => dfdf 
 
	-     [2] => www 
 
	- ) 
 
	 
 
array_search() 函数与 in_array() 一样,在数组中查找一个键值.如果找到了该值,匹配元素的键名会被返回.如果没找到,则返回 false 
实例代码如下: 
	
	- $array = array('1', '2', '3', '4', '5'); 
 
	- $del_value = 3; 
 
	- unset($array[array_search($del_value , $array)]); 
 
	- print_r($array); 
 
	- 输出 
 
	- array('1', '2', '4', '5'); 
 
	 
 
array_filter() 
调用方式:array_filter($array) 
参数说明:$array 是操作的对象,我们将删除其中的空元素 
实例代码如下: 
	
	- <?php 
 
	-     $array = ('a' => "abc", 'b' => "bcd",'c' =>"cde",'d' =>"def",'e'=>""); 
 
	-     array_filter($array); 
 
	-     echo "<pre>"; 
 
	-     print_r($array); 
 
	- ?> 
 
	 
 
结果: 
Array (
     [a] => abc
     [b] => bcd
     [c] => cde
    [d] => def
   )
上面人方法删除的都会不会重建索引的,下面我来给大家介绍一个删除数组元素并重建数组索引的方法 
实例代码如下: 
	
	- function array_remove(&$arr,$offset){   
 
	-     array_splice($arr,$offset,1);  
 
	- }   
 
	- $a = array('a','b','c','d');   
 
	- array_remove($a,2);   
 
	- print_r($a); 
 
	 
 
      
      (责任编辑:admin) |