[Day8]PHP判断式01

PHP判断式

If Else 判断句

If 可以使用在判断某条件达成时执行语句,else则是在不满该条下执行。

以下使用范例示范

<?php
if ($a > $b){
console.log("a win");
}else {
console.log("b win");
}
?>

else if判断句

是if 语句的延伸,可以在原来的 if 表达式值为 false 时执行不同语句。但是和 else 不一样的是,它仅在 elseif 的条件表达式值为 true 时执行语句。

以下使用范例示范:

<?php
if($a > $b){
    echo "a is bigger than b";
}
elseif($a == $b){
    echo "a is equal to b";
}else{
    echo "a is smaller than b";
}
?>

while回圈

只要条件成立就会重复执行语句,表达式在每次开始循环前检查,所以即使值在循环语句中改变,语句也不会停止执行,值到此次循环结束。

如果while表达式一开始的值为false,则循环语句一次都不会执行。

<?php
$i = 1;
while ($i <= 10) { // i > 10停止回圈 
    echo $i++; // 先输出 i 後再加一  
}
?>

do-while回圈

和while回圈相似,差别在於表达式的检查是在循环结束时才检查,所以do-while语句一定会执行循环语句一次。

以下范例:

<?php
$i = 0;
do{
    echo $i;
} while($i<0);
?>

刚好执行一次後停下,因为条件不符合。


for回圈

for回圈的语法是:

for (expr1; expr2; expr3)

    statement

expr1:此表达式会在执行前,无条件执行一次。

expr2:在每次循环开始前求值。如果值为 true,则继续循环,执行statement的循环语句。如果值为 false,则终止循环。

expr3:在循环之後,赋值(并执行)

以下所有范例为显示1~10数字:

<?php
/* example 1 */

for ($i = 1; $i <= 10; $i++) {
    echo $i;
}

/* example 2 */

for ($i=1; ; $i++){
    if ($i > 10){
        break;
    }
    echo $i;
}

/* example 3 */

for (;;){
    if ($i > 10) {
    break;
}
    echo $i;
    $i++;
}

/* example 4 */

for ($i = 1, $j = 0; $i <= 10; $j += $i, print $i, $i++);
?>

foreach

foreach 语法结构提供了可以遍历array的简单方式,foreach只能用於array和object,用於其他数据类型的变数,会发出错误。

foreach语法如下:

foreach (iterable_expression as $value)
statement

foreach (iterable_expression as $key => $value)
statement

第一种格式遍历,会将iterable_expression内的值赋予给$value。

第二种格式遍历与第一种相似,但会在每次循环将当前的键值赋予给$key。

以下为范例:

<?php
/* foreach example 1: value only */
$arr = array(2, 4, 6, 8);
foreach($arr as $value){
    echo "value = $value \n";
}

/* foreach example 2: key and value */
$arr = array(
    "name" => "joe",
    "cel" => 1234567,
    "address" => "Taiwan"
);
foreach($arr as $key => $value){
    echo "$key => $value \n";
}
?>

/* foreach example 3: dynamic arrays */

foreach (array(2, 4, 6, 8, 10) as $v) {
    echo "$v\n";
}

用 list() 给嵌套的数组解包

可以遍历一个数组的数组并且把嵌套的数组解包到循环变量中,只需将 list() 作为值提供。

<?php
$array = [
[1, 2],
[3, 4],
];

foreach ($array as list($a, $b)) {
    // $a contains the first element of the nested array,
    // and $b contains the second element.
    echo "A: $a; B: $b\n";
}
?>

范例输出:

A: 1; B: 2
A: 3; B: 4

list() 中的单元可以少於嵌套数组的,此时多出来的数组单元将被忽略,如果list中单元多於嵌套数组,则会报错:

<?php
$array = [
[1, 2],
[3, 4],
];

foreach ($array as list($a)) {
    // Note that there is no $b here.
    echo "A: $a;\n";
}
?>

输出

A: 1;
A: 3;

资料来源: https://www.php.net/


<<:  DAY9 MongoDB 文件与嵌入式(巢状)文件查询(Find)

>>:  8. 解释 Event Loop ( 下 ) --- Task Queue ( Callback Queue )

23.移转 Aras PLM大小事-流程签核动态指派(2)

设定好角色栏位後,接下来就是大量同步BPM角色名单的签核主管 因此下方程序执行的步骤 1.读取BPM...

Rstudio

Shift+Ctrl+R 分段 可缩 Shift+Ctrl+C 多行注解 Shift+Ctrl+M ...

Re: 新手让网页 act 起来: Day24 - React Hooks 之 useMemo

前言 昨天我们介绍过如何使用 React.memo 与 useCallback 来做效能优化,而 u...

【9】各种优化器(Optimizer) 大车拼实验

Colab连结 今天的主题是要探讨优化器(Optimizer)对模型学习的影响,有关优化器该用哪个好...

Day-23 CPU Scheduling Algorithm

CPU Scheduling Algorithm tags: IT铁人 作用 因为同时处理很多的pr...