php循环控制

九九乘法表

for($x=1;$x<=9;$x++){ #定义变量x
    for($y=1;$y<=$x;$y++){ #定义变量y
        echo $x."*".$y."=".$x*$y." "; #输出
    }
    echo "<br>"; #换行
}

一个简单的变量循环输出

一维数组

$array = [
'name' => 'Jobs',
'age'  => 50,
];

foreach ($array as $key => $value) {
    $value = 22;
    $array[$key] = $value;
    # 此处的value是一个被复制的值,只给value赋值无法改变数组的值
}

等效于

$array = [
'name' => 'Jobs',
'age'  => 50,
];

foreach ($array as $key => &$value) {
	# &符号使循环过程中使用数组中原来的值,而不是一个复制的值
    $value = 22;

}

也就是说在foreach中的 k e y 和 key和 keyvalue只是一个临时的值,是从$array中复制过来的,改变临时值无法改变原数组。

二维数组

$student = array(
    1 => array(
        'name' => "AJEST",
        'age ' => "24",
        'sex' => "男",
        'grade' => "79.9"
    ),
    2 => array(
        'name' => "MDM",
        'age ' => "23",
        'sex' => "女",
        'grade' => "59.9"
    ),
    3 => array(
        'name' => "XL",
        'age ' => "25",
        'sex' => "男",
        'grade' => "59.9"
    ),
);
foreach($student as $valuea){
    foreach($valuea as $valueb){
        echo $valueb;
        echo " ";
    };
    echo "<br>";
}

二维数组是一层套娃关系,第一层中的student和valuea都是数组,其值为array,第二层中的valueb是一维数组中的值。
等价于

foreach($student as $x){
    foreach($x as $y=>$z){
        echo $z;
        echo " ";
    };
    echo "<br>";
}

第一层循环中将二维数组分解成一位数组,第二层中将一维数组中的name和value取出,输出,其中的 y 对应的是一维数组中的键, y对应的是一维数组中的键, y对应的是一维数组中的键,z对应的是一维数组中的值。
等价于

foreach($student as $a=>$x){
    foreach($x as $y=>$z){
        echo $z;
        echo " ";
    };
    echo "<br>";
}

这里的第一层中的 a 对应的是二维数组中的键, a对应的是二维数组中的键, a对应的是二维数组中的键,x对应的是二维数组中的值,若输出他们输出的显然都是array。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值