键值对
上一节中简单的了解了数组的定义、取值及存储,这一节补充一下上一节数组的内容。
在上一节中,我们知道索引是用来标记值的位置,通过索引可以取得当前位置的值。这种一个索引对应着一个值的关系是一个映射关系,称为键值对。键指的是索引,值指的是具体值。在某些编程语言中,这种关系的数组称为字典。
在php中定义这一种键值对关系可以由以下代码进行创建:
$a=array("name"=>"Xiaoming","age"=>"37","sex"=>"nan");
在以上代码中,定义了一个数组变量a,数字的定义形式跟之前不一样。我们看第一个键值对 "name"=>"Xiaoming"
,其中name是键,这个键对应的值是Xiaoming。第二个键是 "age"=>"37"
,键是age,值是37。我们取值可以使用如下方式进行取值:
$a ["age"]
进行输出则如下:
echo $a ["age"];
完整代码是:
<?php
$a=array("name"=>"Xiaoming","age"=>"37","sex"=>"nan");
echo $a ["age"];
?>
结果如下:
设置值的方式跟上一节介绍的设置方式一致,如下:
$a ["age"]=18;
完整代码:
<?php
$a=array("name"=>"Xiaoming","age"=>"37","sex"=>"nan");
$a ["age"]=18;
echo $a ["age"];
?>
结果如下:
循环
循环时在程序执行中重复一句代码或一个代码块的语句,可以节省我们的代码编写量,并且使程序可读性增强等优点。
for循环
for循环是php程序中进行循环的一种方式。 语法如下:
for (初始值; 条件; 增量)
{
要重复的代码或代码块;
}
当我们在项目开发中,如果需要让你重复输出十次你好呀,你可能会觉得我直接echo 十个就ok,但是如果100次、1000次呢?这个时候就很尴尬了。使用循环就可以让你很容易的解决这个问题。查看以下示例:
<?php
for($i=0;$i<10;$i++){
echo 'hello ';
}
?>
以上代码使用了for循环,在for循环的圆括号中,第一个初始值处定义了一个变量i,初始值是0;在第二个条件值处,给予的条件是变量i小于10。在这里,变量i小于10指“当i这个变量小于10的时候,这个循环一直执行”;最后一个增量值处填入的是$i++,在这里++指的是这个变量最开始是0,然后每执行一次循环就加一次。
以上的解释可能让零基础的读者还是摸不着头脑。我以上解释中,每执行一次指的是这个循环第一次执行,会执行 echo 'hello ';
这段代码,但是这个时候并不会跳出循环。看如下代码:
<?php
for($i=0;$i<10;$i++){
echo 'hello ';
}
echo ' 程序执行完了';
?>
在第一次程序执行了 echo 'hello ';
后,并不会执行 echo ' 程序执行完了';
,因为循环中,$i变量的值并没有大于10,所以这个循环将会继续执行(在循环的条件中,设定了变量i小于10,在无特殊情况下会一直执行循环,重复执行花括号中的代码)。
当执行了一次循环中 echo 'hello '; 后,此时变量i将会加1,从0变成1,拿去条件中判断,条件成立继续循环,知道i不小于10,条件不成立,该循环会跳出。
结果如下:
如果想直观的看见变量i的变化,程序代码可以如下编写:
<?php
for($i=0;$i<10;$i++){
echo 'hello <br/>';
echo $i.'<br/>';
}
?>
以上代码中出现的<br/>
为html代码中的换行,也就是从起一行从下一行输出,这样方便观察。
结果如下:
以上代码详细的列出了变量i值的变化。
遍历输出数组值
数组值我们可以使用print_r进行输出当前数组的所有值。通过循环同样也可以输出数组中的所有值。
查看如下示例:
<?php
$a=array('abc','cba',1,22,'as');
echo '数组 a 的长度是'.count($a).'<br/>';
for($i=0;$i<count($a);$i++){
echo $a[$i].'<br/>';
}
?>
以上代码中使用了count函数计算数组a的长度,变量i从0开始,不能超过count计算的数组长度,也就是5。结果如下:
php 教程持续更新中,欢迎关注、点赞、收藏