189 8069 5689

php键值数据遍历 php 遍历字符串

php如何把数据库中的值遍历输出到select option中

比如一张表中有2个字段,id和name,现在你把这张表中的所有的值都取出来放在一个二维数组$arr中了,那么现在来遍历这个$arr数组

创新互联公司专注于北票网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供北票营销型网站建设,北票网站制作、北票网页设计、北票网站官网定制、微信平台小程序开发服务,打造北票网络公司原创品牌,更为您提供北票网站排名全网营销落地服务。

echo "select name=''";

foreach($arr as $key=$vo){

echo "option value=$vo['id']$vo['name']/option";

}

echo "/select";

遍历就是这样了,当然我是用echo 输出的了,记得要写在一对select/select的里面

PHP遍历键值对数组

可以遍历两次$a, 第一次取出所有的父级栏目,放入$newarr中,第二次将子栏目放入对应

的父级栏目数组中, 最后使用$newarr就行

不过这是建立在只有二级栏目的基础上,如果有三级栏目的话就还要麻烦些了

$newarr = array();

foreach ($a as $key = $value)

{

if($value['fID'] == 0)

{

$cid = $value['cID'];

$newarr[$cid] = $value;

unset($a[$key]);

}

}

foreach ($a as $key = $value)

{

if($value['fID'] != 0)

{

$fid = $value['fID'];

$newarr[$fid]['zilanmu'][] = $value;

}

}

PHP 怎么样遍历

第一、foreach()

foreach()是一个用来遍历数组中数据的最简单有效的方法。

?php

$urls= array('aaa','bbb','ccc','ddd');

foreach ($urls as $url){

echo "This Site url is $url! br /";

}

?

显示结果:

This Site url is aaa

This Site url is bbb

This Site url is ccc

This Site url is ddd

第二、while() 和 list(),each()配合使用。

?php

$urls= array('aaa','bbb','ccc','ddd');

while(list($key,$val)= each($urls)) {

echo "This Site url is $val.br /";

}

?

显示结果:

?

This Site url is aaa

This Site url is bbb

This Site url is ccc

This Site url is ddd

第三、for()运用for遍历数组

?php

$urls= array('aaa','bbb','ccc','ddd');

for ($i= 0;$i count($urls); $i++){

$str= $urls[$i];

echo "This Site url is $str.br /";

}

?

显示结果:

This Site url is aaa

This Site url is bbb

This Site url is ccc

This Site url is ddd

这几种遍历数组的方法哪个更快捷些呢,下面做个简单的测试就明白了

=========== 下面来测试三种遍历数组的速度 ===========

一般情况下,遍历一个数组有三种方法,for、while、foreach。其中最简单方便的是foreach。下面先让我们来测试一下共同遍历一个有50000个下标的一维数组所耗的时间。

?php

$arr= array();

for($i= 0; $i 50000; $i++){

$arr[]= $i*rand(1000,9999);

}

function GetRunTime()

{

list($usec,$sec)=explode(" ",microtime());

return ((float)$usec+(float)$sec);

}

######################################

$time_start= GetRunTime();

for($i= 0; $i count($arr); $i++){

$str= $arr[$i];

}

$time_end= GetRunTime();

$time_used= $time_end- $time_start;

echo 'Used time of for:'.round($time_used, 7).'(s)br /br /';

unset($str, $time_start, $time_end, $time_used);

######################################

$time_start= GetRunTime();

while(list($key, $val)= each($arr)){

$str= $val;

}

$time_end= GetRunTime();

$time_used= $time_end- $time_start;

echo 'Used time of while:'.round($time_used, 7).'(s)br /br /';

unset($str, $key, $val, $time_start, $time_end, $time_used);

######################################

$time_start= GetRunTime();

foreach($arr as$key= $val){

$str= $val;

}

$time_end= GetRunTime();

$time_used= $time_end- $time_start;

echo 'Used time of foreach:'.round($time_used, 7).'(s)br /br /';

?

测试结果:

Used time of for:0.0228429(s)

Used time of while:0.0544658(s)

Used time of foreach:0.0085628(s)

结果表明,对于遍历同样一个数组,foreach速度最快,最慢的则是while。从原理上来看,foreach是对数组副本进行操作(通过拷贝数组),而while则通过移动数组内部指标进行操作,一般逻辑下认为,while应该比foreach快(因为foreach在开始执行的时候首先把数组复制进去,而while直接移动内部指标。),但结果刚刚相反。原因应该是,foreach是PHP内部实现,而while是通用的循环结构。所以,在通常应用中foreach简单,而且效率高。在PHP5下,foreach还可以遍历类的属性。

希望能够喜欢。


名称栏目:php键值数据遍历 php 遍历字符串
转载注明:http://www.cdxtjz.cn/article/ddchppg.html

其他资讯