How to add elements to php array

L
Release: 2023-03-01 10:38:01
Original
3078 people have browsed it

How to add elements to php array

How to add elements to php array

1. array_unshift() inserts new elements into the array head

$fruits = array('apple','pear','banana','orange');
array_unshift($fruits, 'cherry');
    pr($fruits);
function pr($str){    
    echo "<pre class="brush:php;toolbar:false">";    
    print_r($str);    
    echo "
"; }
Copy after login

Output:

Array(
    [0] => cherry
    [1] => apple
    [2] => pear
    [3] => banana
    [4] => orange
)
Copy after login

Multiple elements can be passed to array_unshift

$fruits = array(&#39;apple&#39;,&#39;pear&#39;,&#39;banana&#39;,&#39;orange&#39;);
array_unshift($fruits, &#39;cherry&#39;,&#39;pie&#39;);
pr($fruits);
Copy after login

Output:

Array(
    [0] => cherry
    [1] => pie
    [2] => apple
    [3] => pear
    [4] => banana
    [5] => orange
)
Copy after login

2. The similar function array_push inserts one or more elements to the end of the array element.

3. array_splice() inserts new elements at any position (regardless of key names)

$fruits = array(&#39;apple&#39;,&#39;pear&#39;,&#39;banana&#39;,&#39;orange&#39;);
//第三个参数固定为0,第二个参数为插入的索引位置,最后一个参数是插入的元素,如果插入多个,写成数组
array_splice($fruits,3,0,&#39;pie&#39;);
pr($fruits);
Copy after login

Output:

Array(
    [0] => apple
    [1] => pear
    [2] => banana
    [3] => pie
    [4] => orange
)
Copy after login

//Insert multiple new elements, written in array form

$fruits = array(&#39;apple&#39;,&#39;pear&#39;,&#39;banana&#39;,&#39;orange&#39;);$new_items = array(&#39;pie&#39;,&#39;pie2&#39;);
array_splice($fruits,3,0,$new_items);
pr($fruits);
Copy after login

Output:

Array(
    [0] => apple
    [1] => pear
    [2] => banana
    [3] => pie
    [4] => pie2
    [5] => orange
)
Copy after login

4. Insert new elements at any position (considering the case of numeric key names)

There is a disadvantage in using array_splice(), it cannot retain numbers. Key name.

There is a known array below

array(7=>&#39;apple&#39;,3=>&#39;pear&#39;,5=>&#39;banana&#39;,2=>&#39;orange&#39;);
Copy after login

To insert a new element new fruit after the second element pear, the key name is 6.

The implementation process is a bit tortuous, new The array consists of three parts. See the code for details:

$new_key = 6;
$new_value = 'new fruit';
$exist_value = 'pear';
$array = array(7=>&#39;apple&#39;,3=>&#39;pear&#39;,5=>&#39;banana&#39;,2=>&#39;orange&#39;);
$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;
}
Copy after login

Recommended tutorial: "PHP Tutorial"

The above is the detailed content of How to add elements to php array. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template