• 几种php 删除数组元素方法


    几种php教程 删除数组元素方法
    在很多情况下我们的数组会出现重复情况,那我们删除数组中一些重复的内容怎么办,这些元素我必须保持他唯一,所以就想办法来删除它们,下面利用了遍历查询来删除重复数组元素的几种方法。


    看一完整删除重复数组实例


    //删除数组中的一个元素
    function array_remove_value(&$arr, $var){
    foreach ($arr as $key => $value) {
    if (is_array($value)) {
    array_remove_value($arr[$key], $var);
    } else {
    $value = trim($value);
    if ($value == $var) {
    unset($arr[$key]);
    } else {
    $arr[$key] = $value;
    }
    }
    }
    }


    $a是一个数组: 
    count($a); //得到4
    unset($a[1]); //删除第二个元素
    count($a); //得到3
    echo $a[2]; //数组中仅有三个元素,本想得到最后一个元素,但却得到blue,
    echo $a[1]; //无值
    ?>
    也就是说在删除数组中的元素后,数组中的元素个数(用count()得到)变了,但数组下标却没有重新排列,还必须用删除数组前的key来操作相应的值.
    后来我采用另一种方法,其实根本就不叫"方法",是用php4现成的函数array_splice(). 
    count ($a); //得到4
    array_splice($a,1,1); //删除第二个元素
    count ($a); //得到3
    echo $a[2]; //得到yellow
    echo $a[1]; //得到blue
    ?>


    方法二

    删除数组中重复元素的函数
    function delmember(&$array, $id)
    {
    $size = count($array);
    for($i = 0; $i <$size - $id - 1; $i ++)
    {
    $array[$id + $i] = $array[$id + $i + 1];
    }
    unset($array[$size - 1]);
    }

    //删除最后一个元素,长度减1

    <?php
    $stack = array("orange", "banana", "apple", "raspberry");
    $fruit = array_pop($stack);
    print_r($stack);
    ?> 
    经过此操作后,$stack 将只有 3 个单元:

    Array
    (
        [0] => orange
        [1] => banana
        [2] => apple
    )

    转自:http://www.php100.com/html/php/hanshu/2013/0905/4575.html
  • 相关阅读:
    使用 typeof bar === "object" 来确定 bar 是否是对象的潜在陷阱是什么?
    null和undefined的区别?
    JS中 [] == ![]结果为true,而 {} == !{}却为false
    kaptcha验证码使用
    Java Web应用中获取用户请求相关信息,如:IP地址、操作系统、浏览器等信息
    springboot注解
    算法思想
    数据结构
    springboot设置接口超时
    mybatis动态sql
  • 原文地址:https://www.cnblogs.com/lvchenfeng/p/4933004.html
Copyright © 2020-2023  润新知