$v){//Loop code}"; 3. Use while with each() and list() to traverse, the syntax is "while(list($k,$v)=each($ arr)){//Loop code}"."/> $v){//Loop code}"; 3. Use while with each() and list() to traverse, the syntax is "while(list($k,$v)=each($ arr)){//Loop code}".">
search
HomeBackend DevelopmentPHP ProblemWhat are the three ways to traverse an array in php

What are the three ways to traverse an array in php

Sep 06, 2022 pm 07:14 PM
phpphp arrayLoop through

3 ways to traverse an array: 1. Use for statement to traverse, syntax "for($i=0;$i$v){//loop code}"; 3. Use while with each() and list() to traverse, the syntax is "while(list($k, $v)=each($arr)){//Loop code}".

What are the three ways to traverse an array in php

The operating environment of this tutorial: Windows 7 system, PHP version 8.1, DELL G3 computer

Traversing arrays in PHP There are three commonly used methods:

  • Use the for statement to loop through the array;

  • Use the foreach statement to traverse the array;

  • Combined use of list(), each() and while loop to traverse the array.

The most efficient of these three methods is to use the foreach statement to traverse the array. The foreach structure has been introduced since PHP4. It is a statement specially designed for traversing arrays in PHP. It is recommended that everyone use it. Let’s first introduce these methods respectively.

Method 1: Use the for statement to traverse

The for loop will pre-define the variable that controls the number of loops in the for statement, so the for loop The statement can perform loop operations according to a 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 (初始化语句; 循环条件; 变量更新--自增或自减) {
    语句块;   
}

Statement analysis:

  • Initialization statement (expression 1): mainly to initialize a The variable value is used to set a counter, which is the value at the beginning of the loop; this statement is only executed during the first loop and will not be executed again in the future.

  • Loop condition (expression 2): Restriction condition for loop execution, used to control whether to execute the code in the loop body; if the condition is TRUE, the loop continues, if the condition is FALSE , the loop ends and exits the loop immediately.

  • Variable update (expression 3): an expression with an increment or decrement operation. Every time the loop is executed, the value of the counter is immediately modified so that the loop The conditions gradually become "untenable".

  • Statement block: Several codes that need to be executed when the condition is judged to be true.

Example

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

Output result:

What are the three ways to traverse an array in php

Method 2: Use foreach statement to traverse

foreach is a statement specially designed for traversing arrays. It is a commonly used method when traversing arrays. It provides great convenience in traversing arrays; it can also be used after PHP5 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.

The foreach statement has two syntax formats:

  • Grammar format 1:

foreach ($array as $value){
    语句块;
}

Traverse the given $array array and assign the value of the current array to $value in each loop.

Example

<?php
header("Content-type:text/html;charset=utf-8");
$array= array(2,"数学","梨子",3.14,"榴莲",12);
var_dump($array);
echo "遍历数组:<br>";
foreach ($array as $val){
    echo "值是:" . $val ;
    echo "<br/>";
}
?>

What are the three ways to traverse an array in php

  • Syntax format 2:

foreach ($array as $key => $value){
    语句块;
}

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.

Example:

<?php
header("Content-type:text/html;charset=utf-8");
$array= array(2,"数学","梨子",3.14,"榴莲",12);
var_dump($array);
echo "遍历数组:<br>";
foreach ($array as $key => $value) { 
    echo "键名为:".$key.",键值为:".$value . "<br/>";
} 
?>

What are the three ways to traverse an array in php

Explanation:

The foreach statement uses the pointer inside the array every time it loops It will move forward one step, so that the next array element will be obtained in the next loop, until it traverses to the end of the array, stops traversing and exits the loop.

Method 3: Use the while statement each() list() to traverse

while loop statement is a while statement type loop statement, first judge the loop condition. When the condition is satisfied, the loop body will be executed. If it is not satisfied, it will stop.

each() function Returns the current key value in the array and moves the array pointer forward. 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.

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(2,"数学","梨子",3.14,"榴莲",12);
var_dump($array);
echo "遍历数组:<br>";
while( list($key, $val) = each($array) ) {
    echo "$key => $val<br>";
}
?>

Output result:

What are the three ways to traverse an array in php

Explanation:

The while loop statement is a when type loop statement. The loop condition is first judged. When the condition is met, the loop body is executed. Stop when not satisfied.

  • 作用:反复执行某一项操作,直到指定的条件不成立。

  • 特点:先判断表达式,当表达式结果为真时执行相应的语句。

while循环的一般形式为:

while(表达式){    //表达式为循环条件
    PHP语句块;  //PHP语句块为循环体
}

语句解析:

  • 先计算“表达式”的值,当值为真时, 执行循环体内的“PHP语句块”;

    说明:“表达式”的计算结果是布尔类型( TRUE 或 FALSE)的,如果是其他类型的值也会自动转换为布尔类型的值(因为PHP是弱语言类型,会根据变量的值,自动把变量转换为正确的数据类型)。

    “语句块”就是由{ }包围的一个或多个语句的集合;如果语句块中只有一个语句,也可以省略{ }

  • 执行结束后,返回到表达式,再次计算表达式的值进行判断,当表达式值为真,则继续执行“语句块”……这个过程会一直重复

  • 直到表达式的值为假时才跳出循环,执行while 下面的语句。

while语句的流程图如下所示:

What are the three ways to traverse an array in php

通常“表达式”是使用比较运算符或者逻辑运算符计算后的值

注:“死循环”--无法靠自身的控制终止的循环

推荐:《PHP视频教程

The above is the detailed content of What are the three 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
ACID vs BASE Database: Differences and when to use each.ACID vs BASE Database: Differences and when to use each.Mar 26, 2025 pm 04:19 PM

The article compares ACID and BASE database models, detailing their characteristics and appropriate use cases. ACID prioritizes data integrity and consistency, suitable for financial and e-commerce applications, while BASE focuses on availability and

PHP Secure File Uploads: Preventing file-related vulnerabilities.PHP Secure File Uploads: Preventing file-related vulnerabilities.Mar 26, 2025 pm 04:18 PM

The article discusses securing PHP file uploads to prevent vulnerabilities like code injection. It focuses on file type validation, secure storage, and error handling to enhance application security.

PHP Input Validation: Best practices.PHP Input Validation: Best practices.Mar 26, 2025 pm 04:17 PM

Article discusses best practices for PHP input validation to enhance security, focusing on techniques like using built-in functions, whitelist approach, and server-side validation.

PHP API Rate Limiting: Implementation strategies.PHP API Rate Limiting: Implementation strategies.Mar 26, 2025 pm 04:16 PM

The article discusses strategies for implementing API rate limiting in PHP, including algorithms like Token Bucket and Leaky Bucket, and using libraries like symfony/rate-limiter. It also covers monitoring, dynamically adjusting rate limits, and hand

PHP Password Hashing: password_hash and password_verify.PHP Password Hashing: password_hash and password_verify.Mar 26, 2025 pm 04:15 PM

The article discusses the benefits of using password_hash and password_verify in PHP for securing passwords. The main argument is that these functions enhance password protection through automatic salt generation, strong hashing algorithms, and secur

OWASP Top 10 PHP: Describe and mitigate common vulnerabilities.OWASP Top 10 PHP: Describe and mitigate common vulnerabilities.Mar 26, 2025 pm 04:13 PM

The article discusses OWASP Top 10 vulnerabilities in PHP and mitigation strategies. Key issues include injection, broken authentication, and XSS, with recommended tools for monitoring and securing PHP applications.

PHP XSS Prevention: How to protect against XSS.PHP XSS Prevention: How to protect against XSS.Mar 26, 2025 pm 04:12 PM

The article discusses strategies to prevent XSS attacks in PHP, focusing on input sanitization, output encoding, and using security-enhancing libraries and frameworks.

PHP Interface vs Abstract Class: When to use each.PHP Interface vs Abstract Class: When to use each.Mar 26, 2025 pm 04:11 PM

The article discusses the use of interfaces and abstract classes in PHP, focusing on when to use each. Interfaces define a contract without implementation, suitable for unrelated classes and multiple inheritance. Abstract classes provide common funct

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)