本篇内容主要讲解“php数组如何用while求和”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php数组如何用while求和”吧!
求和步骤:1、定义一个变量赋值0,用于存储求和结果,语法“$sum=0;”;2、利用while语句和each()、list()函数来遍历数组,语法“while(list($key,$val)=each($arr)) {//循环体语句块;}”;3、在循环体中,利用“+=”运算符将数组元素一个个相加求和,语法“$sum+=$val;”,循环结束后,“$sum”的值就是求和结果。
本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
while循环语句是一种当型循环语句,先对循环条件进行判断,当条件满足,则执行循环体,不满足时则停止。
while(表达式){ //表达式为循环条件 PHP语句块; //PHP语句块为循环体 }
语句解析:
先计算“表达式”的值,当值为真时, 执行循环体内的“PHP语句块”;
说明:“表达式”的计算结果是布尔类型( TRUE 或 FALSE)的,如果是其他类型的值也会自动转换为布尔类型的值(因为PHP是弱语言类型,会根据变量的值,自动把变量转换为正确的数据类型)。
“语句块”就是由
{ }
包围的一个或多个语句的集合;如果语句块中只有一个语句,也可以省略{ }
。执行结束后,返回到表达式,再次计算表达式的值进行判断,当表达式值为真,则继续执行“语句块”……这个过程会一直重复
直到表达式的值为假时才跳出循环,执行while 下面的语句。
在PHP中,while语句可以配合each()、list()函数的使用来遍历数组并求和。
each() 函数返回数组中当前的键值并将数组指针向前移动。在执行 each() 之后,数组指针将停留在数组中的下一个元素或者当碰到数组结尾时停留在最后一个元素。
而list() 函数用于在一次操作中给一组变量赋值。
实现步骤:
步骤1:定义一个变量赋值0,用于存储求和结果
$sum=0;
步骤2:利用while循环+each() 函数+ list() 函数遍历数组
while( list($key, $val) = each($arr) ) { //循环体语句块; }
步骤3:在循环体中,利用“+=”运算符将数组元素一个个相加求和
$sum+=$val;
循环结束后,$sum的值就是求和结果。
实现示例:
<?php header('content-type:text/html;charset=utf-8'); $arr = [1,2,3,4,5,6,7,8,9,10]; var_dump($arr); $sum=0; while( list($key, $val) = each($arr) ) { $sum+=$val; } echo "数组偶数和为:".$sum; ?>
说明:
each() 函数
each() 函数返回当前元素的键名和键值,并将内部指针向后移动。
提示:each() 函数在 PHP 7.2.0 中被弃用了。
该元素的键名和键值返回到带有四个元素的数组中。两个元素(1 和 Value)包含键值,两个元素(0 和 Key)包含键名。
each(array)
返回值:返回当前元素的键名和键值。该元素的键名和键值返回到带有四个元素的数组中。两个元素(1 和 Value)包含键值,两个元素(0 和 Key)包含键名。如果没有更多的数组元素,则函数返回 FALSE。
list() 函数
list() 函数用于在一次操作中给一组变量赋值。
list(var1,var2...)
参数 | 描述 |
---|---|
var1 | 必需。第一个需要赋值的变量。 |
var2,... | 可选。更多需要赋值的变量。 |
返回值: 返回被赋值的数组。