php清空数组
① php代码实现:1)删除整个数组2)删除数组中指定的元素3)删除重复的元素
$arr = array(1,2,4,2,0,9,8,5);//定义一个数组。
$arr1 = $arr; //定义另一个数组和上一个数组一样。
//循环第一个数组让后循环第二个数组 用第一个数组的每个值和第二个数组比较如果相同就删除,最后输出第二个数组就行了。
for($i = 0;$i<count($arr);$i++){
for($j=$i+1;$j<count($arr);$j++){
if($arr[$i] == $arr[$j])
unset($arr1[$i]);
}
}
echo'<pre>';
print_r($arr1);
第二 如果允许使用array_uniqe()函数的话,直接array_uniqe(直接写数组名就ok)。
在PHP中可以使用内置函数array_unique()来直接删除重复元素,也可以使用array_flip()函数来间接删除重复元素。
1.array_unique()函数
array_unique()函数可以移除数组中的重复的值,并返回结果数组;当几个数组元素的值相等时,只保留第一个元素,其他的元素被删除。
代码示例:
<?php$result1 = array("a" => "green", "red", "b" => "green", "blue",
"red");var_mp($result1);$result2 = array_unique($result1);var_mp($result2);?>
2.array_flip()函数
array_flip()是反转数组键和值的函数,它有个特性就是如果数组中有二个值是一样的,那么反转后会保留最后一个键和值,利用这个特性我们用他来间接的实现数组的去重。
代码示例:
<?phpheader("content-type:text/html;
charset=utf-8");$a = array(1, 5, 2, 5, 1, 3, 2, 4, 5);// 输出原始数组echo "原始数组
:";var_mp($a);// 。
通过使用翻转键和值移除重复值$a = array_flip($a);
// 通过再次翻转键和值来恢复数组元素$a = array_flip($a);// 重新排序数组键$a = array_values($a);// 输出更新后的数组echo "更新数组 :";var_mp($a);?>
② ThinkPHP如何清空静态数组
ThinkPHP清空静态数组还是使用原生PHP来做,有几种方法。
使用unset函数。如:unset($array); // 将变量array注销
直接重新赋值。如:$arr = array(); // 将变量arr赋值为空数组
$arr = ''; // 将变量arr赋值为空字符串
③ php查询的数据库的时候,得到的是一个数组类型的数据,数组中有空的数据,怎么让空的数组删除
不行,两个是完全不同的结构
如果硬把数组,比如{1,2,3,4,5}存入数据库
唯一的方法是把"1,2,3,4,5"当作varchar存进去。
所以只能遍历这个数组然后分别吧1,2,3,4,5存进去。
当然,java框架也许会提供类似的方法,你传一个数组进去,他直接就抱存入数据库。但是内部也一定是拆开存的。
④ 怎么删除php数组中的元素
如果要在某个数组中删除一个元素,可以直接用的unset,例子代码:
<?php
$arr = array('a','b','c','d');
print_r($arr);
unset($arr[1]);
print_r($arr);
?>
以上代码输出的结果如下:
E:\TEMP\文件\exp>a.php
Array
(
[0] => a
[1] => b
[2] => c
[3] => d
)
Array
(
[0] => a
[2] => c
[3] => d
)
也就是说,删除了指定的元素,其它元素的序号是不改变的。
⑤ PHP怎么删除二维数组的空数组
PHP 删除空数组常用解决方案:
利用foreach循环判断来删除为空的数组,注意:如果数组元素非常多的时候,使用循环处理效率会降低。示例如下:
<?php
//定义数组
$arr=array(
"id"=>1,
"name"=>"",
"url"=>""
);
//循环判断
foreach($arras$k=>$v){
if(!$v){//判断是否为空(false)
unset($arr[$k]);//删除
}
}
print_r($arr);//Array([id]=>1[name]=>)
?>使用array_filter函数删除。array_filter是利用回调函数来对数组进行过滤,如果没有回调函数,那么默认就是删除数组中值为false的元素。示例如下:
<?php
//定义数组
$arr=array(
"id"=>1,
"name"=>"",
"url"=>""
);
//array_filter函数对数组进行过滤
$newArr=array_filter($arr);
print_r($newArr);//Array([id]=>1[name]=>)
?>
⑥ php中把数组清空是用什么方法
1.$arr = array()
#理解为重新给变量付一个空的数组。
2.unset($arr)
#这个才是真正意义上的释放,将资源完全释放。
⑦ PHP怎么删除整个数组
举例如下:
$a=array(1,2,3);
unset($a);
就可以把整个数组删除。
删除数组和清空数组不是一个概念,删除数组之后,就是无法访问了,向上面的例子,我们unset之后, 数组就不存在了,整个$a都无法访问了。
⑧ 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_filter($array)删除空数组元素,再判断数组是不是空,时空就删除,unset($array);
⑩ PHP删除空数组
unset指令
<?PHP
$num=array_fill(0,5,rand(1,10));
print_r($num);
echo"<br/>";
unset($num[4]);
print_r($num);
echo"<br/>";
unset($num);
if(is_array){
echo"unset命令不能删除整个数组";
}else{
echo"unset命令可以删除数组";
}
?>
array_splice()函数删除数组成员
<?php
$a=array("red","green","blue","yellow");
count($a);//得到4
array_splice($a,1,1);//删除第二个元素
count($a);//得到3
echo$a[2];//得到yellow
echo$a[1];//得到blue
?>
备注 foreach 一下 然后写个判断就可以删除掉了