关于php 数组的一些感想心得

来源:互联网 发布:淘宝收货地址 编辑:程序博客网 时间:2024/05/29 16:46

首先来看一组简单例子:

$ARR =array();$ARR[]="A";$ARR[]="B";$ARR[]="C";$ARR[]="D";$ARR[]="E";print_r($ARR);//打印输出的结果是:Array ( [0] => A [1] => B [2] => C [3] => D [4] => E )

这说明给数组$ARR[ ] 不停赋值时,数组指针会不断移动!于是我就联想到了把select 查询结果保存为数组储存的方式:

$rs =mysql_query("select * from  table");$ARR =array();while($row =mysql_fetch_array($rs,,MYSQL_ASSOC)){//mysql_fetch_array的结果实际就是个一维关联数组;$ARR[ ] =$row;//将每一条sql记录逐步储存至$ARR数组}/* $ARR变成了一张二维混合数组,你也可以理解为一张EXCEL表哦! {{"a"=>a0,"b"=>b0},{"a"=>a1,"b"=>b1},{"a"=>a2,"b"=>b2}}(上面的书写也许不正确,但是好理解,所以我就这么写了 O(∩_∩)O哈哈~)也即是说:$ARR[0] 的值是一维数组:{"a"=>a0,"b"=>b0}$ARR[1] 的值是一维数组:{"a"=>a1,"b"=>b1}$ARR[2] 的值是一维数组:{"a"=>a2,"b"=>b2}*///逐行遍历数组内容方法:foreach($ARR as $new_arr){//foreach 每一次循环会自动移动到下一指针对应的值(一维数组、就像EXCEL的一行记录一样,怎么好理解就怎么理解,反正是一维数组,而且是关联型的数组,要用array['键名'] 输出对应值)echo $new_arr['a'];echo $new_arr['b'];}


//最后bb两句:
forech($arr as $new_arr){} 与 forech($arr as $v = > $k){}
forech($arr as $new_arr){} 用得最多,一般主要目的是为了遍历输出数组每一行的值(尤其是在知道“键名”的情况下吧,尤其是将sql记录集转换后为数组的情况下)。
 forech($arr as $v = > $k){}用得很少,$v 代表键名,$k 代表键值。用这种方式遍历,我暂时还没发现有毛意义, 可能是一般不知道“键名”吧,所以用这种方式输出全部数据;




原创粉丝点击