PHP数组如何添加元素

释放双眼,带上耳机,听听看~!

PHP数组如何添加元素插图

 

php数组添加元素的方法

  1. array_unshift()数组头插入新元素

 

$fruits = array('apple','pear','banana','orange');

array_unshift($fruits, 'cherry');

    pr($fruits);

function pr($str){    

    echo "
";    

    print_r($str);    

    echo "

";

}

 

输出:

Array(

    [0] => cherry

    [1] => apple

    [2] => pear

    [3] => banana

    [4] => orange

)

可向array_unshift传入多个元素

 

$fruits = array('apple','pear','banana','orange');

array_unshift($fruits, 'cherry','pie');

pr($fruits);

输出:

Array(

    [0] => cherry

    [1] => pie

    [2] => apple

    [3] => pear

    [4] => banana

    [5] => orange

)

 

2. 与之类似的函数array_push,向数组末尾插入一个或多个元素。

3. array_splice()任意位置插入新元素(不考虑键名)

 

$fruits = array('apple','pear','banana','orange');

//第三个参数固定为0,第二个参数为插入的索引位置,最后一个参数是插入的元素,如果插入多个,写成数组

array_splice($fruits,3,0,'pie');

pr($fruits);

输出:

Array(

    [0] => apple

    [1] => pear

    [2] => banana

    [3] => pie

    [4] => orange

)

//插入多个新元素,写成数组形式

$fruits = array('apple','pear','banana','orange');$new_items = array('pie','pie2');

array_splice($fruits,3,0,$new_items);

pr($fruits);

输出:

Array(

    [0] => apple

    [1] => pear

    [2] => banana

    [3] => pie

    [4] => pie2

    [5] => orange

)

4. 任意位置插入新元素(考虑数字键名的情况)

使用array_splice()有个不好的地方,不能保留数字键名。

下面有一已知数组

array(7=>'apple',3=>'pear',5=>'banana',2=>'orange');

要向第二个元素pear后面插入一新元素new fruit,键名是6.

实现过程有点曲折,新数组由三部分组成。具体见代码:

 

$new_key = 6;

$new_value = 'new fruit';

$exist_value = 'pear';

$array = array(7=>'apple',3=>'pear',5=>'banana',2=>'orange');

$pp = insert_array($array,$exist_value,$new_key,$new_value);

pr($pp);

function insert_array($array,$exist_value,$new_key,$new_value){

    $search_key = array_search($exist_value,array_values($array));

    if($search_key !== false){

        $new_array = array();

        $len = count($array);

        $arr_before = array_slice($array,0,$search_key+1,TRUE);

        $arr_after =$search_key == 0 ? array_slice($array,$search_key,$len,TRUE) : array_slice($array,$search_key-1,$len,TRUE);

        foreach($arr_before as $k=>$v){

            $new_array[$k] = $v;

        }

        $new_array[$new_key] = $new_value;

        foreach($arr_after as $k=>$v){

            $new_array[$k] = $v;

        }

    }else{

        $new_array = $array;

        $new_array[$new_key] = $new_value;

    }

    return $new_array;

}

文章来源于互联网: PHP数组如何添加元素

人已赞赏
杂七杂八

WordPress使用timthumb.php截取文章缩略图教程

2020-10-26 19:00:04

杂七杂八

小程序需要租用服务器吗?

2020-10-26 19:07:39

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索