php数组中的键值对不是理解很透,是否说的是可以自定义一个下标,让后创建一个新的键值对,让后经常出现foreach($a as $key=>$b){...}.里面的$key作用是什么
2条回答 默认 最新
- 诸相非相 2015-10-27 21:03关注
简单说吧。上面foreach就是遍历数组$a的每个元素,并把每个元素的键、值分别赋给 $key、$b,便于在循环主体中使用。
下面
1、php中array当纯粹的数组用,$key就是数组元素的下标,
array('a1','a2'); 等价于 array(0 =>'a1', 1 => 'a2');
如果不特别指定下标,每增加一数组项,下标自增1
2、array当作映射表来用,实际上这也是array最重要的用法。这时作为key可以数字也可以是字符串
下面定义了电话区号和城市的映射表,如下$map = array( '010' => '北京', '0755' => '深圳', ...... );
如果要查0755对应的是哪个城市就可以用map['0755']查出
另外再举个例子,页面上经常会有下拉列表,那么如果要生成区号-城市下拉列表的话就要echo '<select>'; foreach($map as $code = > $city){ //双引号总的变量可以用{}括起来 echo "<option value = '{$code}'>{$city}</option>" } echo '</select>';
输入就是
<select><option value='010'> 北京</option><option value='0755'> 深圳</option></select>
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报