php删除元素
‘壹’ php中怎么删除数组的第一个元素和最后一个元素
使用 array_shift 删除数组的第一个元素,例如:
$user=array('apple','banana','orange');
$result=array_shift($user);
print_r($result);
print_r($user);
array_pop() 弹出并返回 array 数组的最后一个单元,并将数组 array 的长度减一。如果 array 为空(或者不是数组)将返回 NULL。
array_shift() 将 array 的第一个单元移出并作为结果返回,将 array 的长度减一并将所有其它单元向前移动一位。所有的数字键名将改为从零开始计数,文字键名将不变。如果 array 为空(或者不是数组),则返回 NULL。
‘贰’ PHP中array_splice()函数对数组元素的添加、修改、删除
array_splice() 函数从数组中可实现对数据中元素的添加、修改、删除操作,方便对数组中的值进行处理。
语法:array_splice(array,start,length,array) ,start是从0开始标记,千万不要忘记。注意添加和修改时参数是4个,删除是3个参。
添加元素:
删除元素:
修改元素:
‘叁’ php 怎么删除多维数组中的元素 - 不知道键,只有值
对于多维数组的话,并且不清楚具体几维的话,那就只能使用foreach配合,递归进行遍历数组了。
以第一个明弊子数组元素作为基础,存段轮在的记录,不存在的加握槐信入基础匹配。
‘肆’ php 删除多维数组指定元素
foreach($data_arras$key=>$data){
if(in_array('id',array_keys($data))){
unset($data_arr[$key]['id']);
}
}
‘伍’ 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数组中的元素
么删除php数组中的元素,不能是简单的把元素清空或者通过栈的方式去删除元素
工具/原料
php数组
php的unset方法
方法/步骤
php的数组操作起来很方便的说,至于怎么去删除其中的元素,可能你想过这样的办法
$arr[4] = '';
但是这样只是赋值为空了,不可行
array_shift($arr)
也只是删除了数组中的第一个元素,有没有简单快捷的方法呢?
有没有简单快捷的方法呢,肯定是有的,不需要去网数组的方法去想,直接可以这样就ok了
unset($arr[3]);
‘柒’ 如何正确实现PHP删除数组重复元素
array_unique
(PHP 4 >= 4.0.1, PHP 5, PHP 7)
array_unique — 移除数组中重复的值
说明
array array_unique ( array $array [, int $sort_flags = SORT_STRING ] )
array_unique() 接受 array 作为输入并返回没有重复值的新数组。
注意键名保留不变。array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。
Note: 当且仅当 (string) $elem1 === (string) $elem2 时两个单元被认为相同。就是说,当字符串的表达一样时。 第一个单元将被保留。
参数
array
输入的数组。
sort_flags
The optional second parameter sort_flags may be used to modify the sorting behavior using these values:
Sorting type flags:
SORT_REGULAR - compare items normally (don't change types)
SORT_NUMERIC - compare items numerically
SORT_STRING - compare items as strings
SORT_LOCALE_STRING - compare items as strings, based on the current locale.
返回值
Returns the filtered array.
更新日志
版本
说明
5.2.10 Changed the default value of sort_flags back to SORT_STRING.
5.2.9 Added the optional sort_flags defaulting to SORT_REGULAR. Prior to 5.2.9, this function used to sort the array with SORT_STRING internally.
范例
Example #1 array_unique() 例子
<?php
$input = array("a" => "green", "red", "b" => "green", "blue", "red");
$result = array_unique($input);
print_r($result);
?>
以上例程会输出:
Array
(
[a] => green
[0] => red
[1] => blue
)
Example #2 array_unique() 和类型
<?php
$input = array(4, "4", "3", 4, 3, "3");
$result = array_unique($input);
var_mp($result);
?>
以上例程会输出:
array(2) {
[0] => int(4)
[2] => string(1) "3"
}
参见
array_count_values() - 统计数组中所有的值出现的次数
注释
Note: Note that array_unique() is not intended to work on multi dimensional arrays.
‘捌’ 删除数组元素实用的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 删除包含某一字符的数组元素
PHP删除包含某一字符的数组元素,首先要通过循环判断元素值是否包含字符,然后删除即可。示例代码:
<?php
//数组
$arr=array(
"tep"=>"uuy98",
"num"=>55,
"str"=>"iuy6654",
"legth"=>90
);
//包含字符u
$str="u";
foreach ($arr as $k=>$v){
//判断数组值是否包含字符u
if(strpos($v, $str)!== false){
//删除对应的元素
unset($arr[$k]);
}
}
print_r($arr);
//Array ( [num] => 55 [legth] => 90 )
?>