php数组删除
⑴ php如何从数组中删除一个元素
如果要在某个数组中删除一个元素,可以直接用的unset,例子代码:
<?php
$arr
=
array('a','b','c','d');
print_r($arr);
unset($arr[1]);
print_r($arr);
?>
以上代码输出的结果如下:
E:\TEMP\文件\exp>a.phpArray(
[0]
=>
a
[1]
=>
b
[2]
=>
c
[3]
=>
d)Array(
[0]
=>
a
[2]
=>
c
[3]
=>
d)
⑵ PHP一段数组,删除其中某一行,怎么写
foreach($arrayas$k=>$v){
if($v['goodsId']=='269'){
unset($array[$k]);
}
}
⑶ 几种删除php数组中指定值元素的方法
array_splice函数可以删除数组中的元素(只是该函数的功能之一),array_splice用法如下:
array_splice — 把数组中的一部分去掉并用其它值取代
1
array array_splice( array &$input, int $offset[, int $length = 0 [, mixed $replacement ]] )
把 input 数组中由offset 和 length指定的单元去掉,如果提供了 replacement 参数,则用其中的单元取代。
input:输入的数组。
offset:如果 offset 为正,则从 input数组中该值指定的偏移量开始移除。如果 offset为负,则从 input 末尾倒数该值指定的偏移量开始移除。
length:如果省略 length,则移除数组中从offset到结尾的所有部分。
如果指定了 length并且为正值,则移除这么多单元。
如果指定了 length并且为负值,则移除从 offset 到数组末尾倒数length 为止中间所有的单元。
小窍门:当给出了replacement 时要移除从 offset到数组末尾所有单元时,用count($input) 作为 length。
replacement:如果给出了 replacement 数组,则被移除的单元被此数组中的单元替代。
示例,删除数组$inputArr的第5~10个元素(从0开始数,包括第5个和第10个,共6个元素)
array_splice($inputArr,5,6);
⑷ php 删除数组中的元素
不知道 同学知不知道 array_slice 这个函数?
$arr = array_slice($arr, 0, 3);
就可以了。
array_slice() 第一个参数是要切割的数组,第二个参数是起始位置,第三个参数是长度。
就是 切割 $arr这个数组,从第0个元素往后数3个。
array_slice 用法很灵活,可以支持负数参数,具体可以自己查看php手册。
http://cn.php.net/manual/en/function.range.php
⑸ PHP删除数组中指定的值
<?php
//这是在数据库取出的01数据
$string="7,12,541";
//把01的数据转为数组
$string_to_array=explode(",",$string);
//转换数组,默认数组的键值对是类似这样
//array(0=>7,1=>12,2=>541);
//转换后是array(7=>0,12=>1,541=>2);
$arr_flip=array_flip($string_to_array);
//删除为7的
$delete_mark=7;
unset($arr_flip[$delete_mark]);
//数组再转回来
$string_to_array=array_flip($arr_flip);
//数组合成字符串
$string_end=implode(",",$string_to_array);
var_mp($string_end);
上面代码和注释都写好了,主要是这部分处理,取出数据应该不难吧
⑹ 删除数组元素实用的PHP数组函数
/**
*
从数组中删除空白的元素(包括只有空白字符的元素)
*
*
@param
array
$arr
*
@param
boolean
$trim
*/
复制代码
代码如下:
function
array_remove_empty(&
$arr,
$trim
=
true)
{
foreach
($arr
as
$key
=>
$value)
{
if
(is_array($value))
{
array_remove_empty($arr[$key]);
}
else
{
$value
=
trim($value);
if
($value
==
'')
{
unset($arr[$key]);
}
elseif
($trim)
{
$arr[$key]
=
$value;
}
}
}
}
/**
*
将一个二维数组转换为
hashmap
*
*
如果省略
$valueField
参数,则转换结果每一项为包含该项所有数据的数组。
*
*
@param
array
$arr
*
@param
string
$keyField
*
@param
string
$valueField
*
*
@return
array
*/
复制代码
代码如下:
function
array_to_hashmap(&
$arr,
$keyField,
$valueField
=
null)
{
$ret
=
array();
if($valueField)
{
foreach
($arr
as
$row)
{
$ret[$row[$keyField]]
=
$row[$valueField];
}
}
else
{
foreach($arr
as
$row)
{
$ret[$row[$keyField]]
=
$row;
}
}
return
$ret;
}
⑺ php如何删除数组中的某个元素用法总结
如果要在某个数组中删除一个元素,可以直接用的unset,例子代码版:
<?php $arr = array('a','b','c','d'); print_r($arr); unset($arr[1]); print_r($arr); ?>
以上代码输出的结果如权下:
E:\TEMP\文件\exp>a.phpArray( [0] => a [1] => b [2] => c [3] => d)Array( [0] => a [2] => c [3] => d)
也就是说,删除了指定的元素,其它元素的序号是不改变的。
⑻ php 一次删除多个数组元素
array_splice($a1,start,length,$a2);详情看w3school里面关于php讲解的数组里面有
而且unset不是这样用的,,,它一次只能删除一个键和值,unset($a[0]);unset($a[2]);,然后foreach循环输出
⑼ PHP怎么删除整个数组
举例如下:
$a=array(1,2,3);
unset($a);
就可以把整个数组删除。
删除数组和清空数组不是一个概念,回删除数组之后,就是无法访答问了,向上面的例子,我们unset之后, 数组就不存在了,整个$a都无法访问了。