Home >Backend Development >PHP Tutorial >Take you to quickly master the replacement of PHP array elements (detailed examples)
In the previous article "Learn three methods to obtain multiple array differences (collection)", it introduced in detail the relevant knowledge on how to obtain the array difference method in PHP. In this article we Let’s take a look at the relevant knowledge about how to replace elements in an array in PHP. I hope it will be helpful to everyone!
In the previous article, we mentioned that if you want to replace a string in PHP, you can use the str_replace
function and substr_replace
() function, strings and arrays are very important data types in PHP, so how can we replace elements in the array?
In PHP, you can replace elements in the array through the array_splice
function, the array_replace
function and the array_replace_recursive
function. Below we will Let’s take a look at how to use these three functions respectively.
<strong><span style="font-size: 20px;">array_splice</span></strong>
Function
# can be passed in PHP ##array_spliceThe function removes an element from an array and replaces it with a new element.
array_spliceThe basic syntax format of the function is as follows:
array_splice(array,start,length,array)What needs to be noted is:
array represents the array we need to operate on. The parameter
start is used to represent the starting position of deleted elements. The parameter length It is used to specify the number of elements to be removed, and it is also the length of the array in the returned result. The second parameter
array is used to specify the array with the elements to be inserted into the original array.
start is a positive number, it means starting to remove from the offset specified by the value in the array. If this parameter is a negative number, it means to start removing from the end of the array at the offset specified by the value. If it is
0, it will be removed starting from the first element.
lengthIf it is a positive number, it means the number of elements to remove. If it is a negative number, it means to remove the countdown
length from start
to the end of the array. All elements in the middle up to . If the value of this parameter is not set, it means to remove all elements from the position set by the start parameter to the end of the array.
array_splice function through an example. The example is as follows:
<?php $a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $a2=array("a"=>"purple","b"=>"orange"); array_splice($a1,0,2,$a2); print_r($a1); ?>Output result:
array_splice function. Let’s take a look at the other two methods.
<strong>array_replace<span style="font-size: 20px;"></span></strong>
Function
array_replace Function to replace the value of the first array with the value of the following array.
array_replace The basic syntax format of the function is as follows:
array_replace(array1,array2,array3...)What needs to be noted is:
NULL.
<?php $a1=array("a"=>"red","b"=>"green"); $a2=array("a"=>"orange","burgundy"); print_r(array_replace($a1,$a2)); ?>Output result:
<?php $a1=array("a"=>"red","green"); $a2=array("a"=>"orange","b"=>"burgundy"); print_r(array_replace($a1,$a2)); ?>Output result:
<?php $a1=array("red","green"); $a2=array("blue","yellow"); $a3=array("orange","burgundy"); print_r(array_replace($a1,$a2,$a3)); ?>Output result:
上述示例中,出现了三个数组,这时候需要注意的是,后面数组的值会覆盖前面数组的值。
这便是array_replace
函数的基本用法,下面我们继续来看array_replace_recursive
函数的用法。
array_replace_recursive
函数
在PHP中可以通过array_replace_recursive
函数来递归的使用第二个数组的值来替换第二个数组的值。
array_replace_recursive
函数的基本语法格式如下:
array_replace_recursive(array1,array2,array3...)
其中需要注意的是:
参数array1表示的是我们需要被替换的数组,参数array2表示的是指定要替换array1的值的数组,array3表示的是指定多个需要替换的数组,后面的数值会覆盖前面的数值。返回的结果是被替换的数组,如果函数其中有错误的话,返回的结果就是NULL
。
如果数组中没有使用指定的键来规定数组中的元素,那么array_replace_recursive
函数就可以看成是array_replace
函数。
如果一个键在第一个数组和第二个数组中都存在,这时候第二个数组的值会替换第一个数组的值,如果一个键只存在于第一个数组,那么这个值会保存,如果一个键只存在于第二个数组,这时候会在第一个数组创建一个一样的元素。
下面我们通过示例来看一下array_replace_recursive
的使用,示例如下:
<?php $a1=array("a"=>array("red"),"b"=>array("green","blue")); $a2=array("a"=>array("yellow"),"b"=>array("black")); $a3=array("a"=>array("orange"),"b"=>array("burgundy")); print_r(array_replace_recursive($a1,$a2,$a3)); ?>
输出结果:
上述示例中,多个数组后面的数值会覆盖前面的数值。
大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。
The above is the detailed content of Take you to quickly master the replacement of PHP array elements (detailed examples). For more information, please follow other related articles on the PHP Chinese website!