PHP is a widely used server-side scripting language that has powerful array operation capabilities. The array_splice() function is a very important array function. It can perform various operations such as inserting, deleting and replacing arrays. This article will introduce the usage of the array_splice() function in detail.
1. Basic syntax of array_splice() function
array_splice() function is used to operate arrays. Its basic syntax is as follows:
array_splice(array &$ input, int $offset[, int $length[, mixed $replacement]])
Among them, $input represents the array to be operated on, and $offset represents the starting position of insertion or deletion. If $offset is a positive number, it is calculated from the beginning of the array, if it is a negative number, it is calculated from the end of the array. $length represents the number of elements to be deleted. If it is 0, it means not to delete any elements. $replacement represents the element to be inserted, which can be a single element or an array containing multiple elements.
2. Insert elements
Let’s look at an example:
$array = array('apple', 'banana', 'orange');
array_splice ($array, 1, 0, 'pear');
print_r($array);
The running result is:
Array
(
[0] => apple [1] => pear [2] => banana [3] => orange
)
In the above code, the first element position in the $array array is 'banana', and the array_splice() function is used to insert 'pear' into this position (the second element). Since the third parameter is 0, no elements will be removed.
3. Delete elements
If you want to delete elements, set the $length parameter to the number of elements to be deleted. For example:
$array = array('apple', 'banana', 'orange');
array_splice($array, 1, 1);
print_r($array);
The running result is:
Array
(
[0] => apple [1] => orange
)
In the above code, the first element position in the $array array is 'banana' , use the array_splice() function to delete an element. Since the $replacement parameter is not specified, the deleted elements will simply be removed from the array.
4. Replace elements
To replace elements in the array, you can set the $length parameter to the number of elements to be replaced, and set the $replacement parameter to the element to be replaced. For example:
$array = array('apple', 'banana', 'orange');
array_splice($array, 1, 1, 'pear');
print_r($array );
The running result is:
Array
(
[0] => apple [1] => pear [2] => orange
)
In the above code, the position of the first element in the $array array is 'banana', use the array_splice() function to remove the element at that position and replace it with 'pear'.
5. Replace multiple elements
The $replacement parameter can also be an array containing multiple elements, so that multiple elements can be replaced. For example:
$array = array('apple', 'banana', 'orange', 'grape');
$replace = array('pear', 'peach');
array_splice($array, 1, 2, $replace);
print_r($array);
The running result is:
Array
(
[0] => apple [1] => pear [2] => peach [3] => grape
)
In the above code, starting from the first element position ('banana') in the $array array, two consecutive elements ('banana' and 'orange') are deleted, and the two elements in the $array array are replaced with elements ('pear' and 'peach') to replace them.
6. Practical Application
The array_splice() function is a very practical function and is often used in actual projects. For example, if we want to display a news list by turning pages, we can first obtain the data of all news, and then use the array_splice() function to perform paging based on the page number and the number displayed on each page. The sample code is as follows:
// Get all news
$news_list = DB::table('news')->get();
// Paging operation
$page_size = 10; //Display 10 pieces of data per page
$total_pages = ceil(count($news_list) / $page_size); //Total number of pages
//Current page number
if (empty($_GET['page']) || $_GET['page'] < 1) {
$current_page = 1;
} elseif ($_GET['page'] > $total_pages) {
$current_page = $total_pages;
} else {
$current_page = $_GET['page'];
}
// Get the news list of the current page
$start = ($current_page - 1) * $page_size;
$ news_page = array_splice($news_list, $start, $page_size);
// Display paging results
foreach ($news_page as $news) {
echo $news->title . '<br>';
}
In this way, you can use the array_splice() function to paginate the news list, only display the specified amount of data each time, and you can switch the page number at any time to turn the page.
In short, the array_splice() function is a very practical function in the PHP function library. Mastering its usage allows us to operate arrays more flexibly.
The above is the detailed content of Detailed explanation of the usage of array_splice() function in PHP function library. For more information, please follow other related articles on the PHP Chinese website!