起步 - for循环 ¶
作者:KK
发表日期:2016.8.5
for循环 ¶
for循环一般用来遍历数组,基本写法和JS差不多,示例:
$ids = [];
for($i = 0; $i <= 10; $i++){
$ids[] = $i;
}
echo 'ids:' . implode('、', $ids);
$ids是个数组,在循环里将每一次循环的$i变量添加到这个数组元素中,结束循环后用implode函数将这个数组的元素拼成了一个字符串来输出
JS就是这样嘛:
var ids = [];
for(var i = 0; i <= 10; i++){
ids.push(i);
}
console.log(ids.join('、'));
其实思想是一模一样的,只是写法不同,怎样,掌握JS的话很快就能上手PHP了吧
foreach循环 ¶
在JS里遍历一个对象的属性用的是for(var key in ...)
这样的写法,在PHP里也有,下面遍历一个数组的各个键值:
$user = [
'name' => 'Jay',
'age' => 18,
'money' => 65524,
'city' => 'xxx'
];
foreach($user as $key => $value){
echo $key . ' : ' . $value . '<br/>';
}
这就是foreach,跟for语句的不同点在于for指定了一个起始值和一个终止值,通常固定了循环的次数,但是foreach不同,它会遍历所有元素,所以当我们向user定义更多键值的时候,它也跟着遍历那么多个键值,没有固定的个数
以上代码的JS版:
var user = {
name : 'Jay',
age : 18,
money : 65524,
city : 'xxx'
};
for(var key in user){
console.log(key + ' : ' + user[key]);
}
foreach语句也可以不指定key部分,这样就不会有key了,只有value:
$user = [
'name' => 'Jay',
'age' => 18,
'money' => 65524,
'city' => 'xxx'
];
foreach($user as $value){
echo $value . '<br/>';
}
这其实用来遍历索引数组也是可以的:
$names = ['aabb', 'ccdd', 'eeff'];
foreach($names as $name){
echo $name . '<br/>';
}
至于循环里的$key,$value,$name这些变量其实都是自己起的,没有固定要这样写