Home > Backend Development > PHP Problem > php leaves only the first few elements of the array

php leaves only the first few elements of the array

PHPz
Release: 2023-05-19 12:01:07
Original
822 people have browsed it

When developing applications using PHP, sometimes you need to process the array, for example, leaving only the first few elements of the array. Here are several ways to implement this feature.

Method 1: Use the array_slice() function

The array_slice() function can return a subset of the array, and you can choose to retain the first few elements of the array. The specific usage is as follows:

$arr = ['apple', 'banana', 'orange', 'watermelon', 'peach'];
$new_arr = array_slice($arr, 0, 3);
print_r($new_arr);
Copy after login

In the above code, $arr is the original array, the second parameter 0 means to intercept starting from subscript 0, and the third parameter 3 means to intercept 3 elements. $new_arr is the new array after interception, and the output is: Array ( [0] => apple [1] => banana [2] => orange ).

Method 2: Use the array_splice() function

The array_splice() function can cut, insert and delete the array. By deleting elements at the end of the array, only the first few elements remain. The specific usage is as follows:

$arr = ['apple', 'banana', 'orange', 'watermelon', 'peach'];
array_splice($arr, 3);
print_r($arr);
Copy after login

In the above code, $arr is the original array, and the second parameter 3 means to delete starting from subscript 3. Because the first three elements are to be retained, all subsequent elements are deleted. . The output is: Array ([0] => apple [1] => banana [2] => orange ).

Method 3: Use for loop

Use for loop to traverse the array, you can retain the first few elements and delete all subsequent elements. The specific code is as follows:

$arr = ['apple', 'banana', 'orange', 'watermelon', 'peach'];
$count = count($arr);
for($i = 0; $i < $count; $i++){
    if($i < 3) {
        $new_arr[] = $arr[$i];
    }
}
print_r($new_arr);
Copy after login

In the above code, $arr is the original array, and $count represents the number of array elements. Traverse the array through a for loop and determine if $i is less than 3, then add the elements of $arr[$i] to the new array $new_arr. The output result is the same as method one.

Method 4: Use the array_filter() function

The array_filter() function can filter elements in the array through a callback function. We can use this function in conjunction with the range() function to construct a subscript array with the same length as the array, and use the callback function to determine whether the subscript is less than 3, thereby achieving the function of leaving only the first few elements. The specific code is as follows:

$arr = ['apple', 'banana', 'orange', 'watermelon', 'peach'];
$keys = range(0, count($arr)-1);
$new_keys = array_filter($keys, function($key){
    return $key<3;
});
$new_arr = array_intersect_key($arr, array_flip($new_keys));
print_r($new_arr);
Copy after login

In the above code, $arr is the original array, and $keys is the subscript array constructed by the range() function. Delete unnecessary subscripts through the array_filter() function to obtain a new subscript array $new_keys. Finally, use the array_intersect_key() function to return the new array, and the output result is the same as method 1.

Summary:

The above are four ways to achieve only the first few elements of the array. Each method has its own characteristics. Choosing the appropriate method can improve code efficiency and readability. sex.

The above is the detailed content of php leaves only the first few elements of the array. For more information, please follow other related articles on the PHP Chinese website!

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