$v)"; 3. Use "while( list($k,$v)=each(array))"; 4. Use "array_map (callback function, array)", etc."/> $v)"; 3. Use "while( list($k,$v)=each(array))"; 4. Use "array_map (callback function, array)", etc.">

Home  >  Article  >  Backend Development  >  What are the five ways to traverse an array in php

What are the five ways to traverse an array in php

青灯夜游
青灯夜游Original
2022-05-10 17:17:115761browse

Five traversal methods: 1. Use "for($i=0;$i$v)" ;3. Use "while(list($k,$v)=each(array))"; 4. Use "array_map(callback function, array)", etc.

What are the five ways to traverse an array in php

The operating environment of this tutorial: windows7 system, PHP7.1 version, DELL G3 computer

php Five methods of traversing arrays in

Method 1: Use for loop statement

The for loop will pre-define the variable that controls the number of loops in In the for statement, the for loop statement can perform loop operations according to the known number of loops, which is suitable for situations where the number of times the script needs to be run is clearly known.

The syntax format of the for loop is as follows:

for (初始化语句; 循环条件; 变量更新--自增或自减) {
    语句块;  
}

Let’s take a look at the code example below:

<?php
header("Content-type:text/html;charset=utf-8");
$array= array(2,"数学","梨子",3.14,"榴莲",12);
for ($i=0; $i < count($array); $i++) { 
    echo $array[$i] . "<br/>";
} 
?>

Output result:

What are the five ways to traverse an array in php

Method 2: Use foreach loop statement

foreach is a statement specially designed for traversing arrays. It is a commonly used method when traversing arrays. It provides This is a great convenience; after PHP5, you can also traverse objects (foreach can only be applied to arrays and objects).

The foreach statement traverses the array regardless of the array subscript, and can be used for discontinuous index arrays and associative arrays with strings as subscripts.

Let’s take a closer look at the code example:

<?php
header("Content-type:text/html;charset=utf-8");
$array= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
foreach ($array as $val){
    echo "值是:" . $val ;
    echo "<br/>";
}
echo "<br/>";
foreach ($array as $key => $value) { 
    echo "键名为:".$key.",键值为:".$value . "<br/>";
} 
?>

Output result:

What are the five ways to traverse an array in php

Traverse the given $array array, in each loop, the value of the current array will be assigned to $value, and the key name will be assigned to $key.

Method 3: Use while loop each() list()

each() function returns the current key value in the array and moves the array pointer forward move. After each() is executed, the array pointer will stay at the next element in the array or at the last element when the end of the array is reached.

The list() function is used to assign values ​​to a set of variables in one operation.

while loop each() function list() function can traverse the array, let’s take a look at the code example below:

<?php
header("Content-type:text/html;charset=utf-8");
$array= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
while( list($key, $val) = each($array) ) {
    echo "$key => $val<br>";
}
?>

Output result:

What are the five ways to traverse an array in php

Method 4: Use the array_map() function

Use an anonymous function to process each element in the array. Return a new array after the traversal is completed

<?php
$arr = ['a', 'b', 'c'];
var_dump($arr);
$arr = array_map(function ($item) {
    return $item . '_i';
}, $arr);
var_dump($arr);
?>

What are the five ways to traverse an array in php

You can process multiple arrays at the same time

<?php
header('content-type:text/html;charset=utf-8');   
$arr_1 = ['a', 'b', 'c'];
$arr_2 = ['你', '好', '吗', '原', '罪'];
// $arr_n = [...];
$arr = array_map(function ($item_1, $item_2) {
    return $item_1 . '_' . $item_2 . '_i';
}, $arr_1, $arr_2);

var_dump($arr); // ['a_你_i', 'b_好_i', 'c_吗_i', '_原_i', '_罪_i']
?>

What are the five ways to traverse an array in php

Method 5: Use the array_walk() function

to traverse your array in the form of pass-by-reference, with no return value and can only process one array.

<?php
$arr = ['a', 'b', 'c'];
array_walk($arr, function (&$item) {
    $item = $item . '_i';
});

var_dump($arr); 
?>

What are the five ways to traverse an array in php

Have you noticed &$item? Yes, there is an extra &, which represents your formal parameters Data is received by reference. All you have to do is find a way to change this parameter.

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of What are the five ways to traverse an array in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
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