1、在test.php文件内,使用header设置test.php执行的编码为utf8,避免输出中文的时候出现乱码。
成都创新互联为企业级客户提高一站式互联网+设计服务,主要包括成都做网站、成都网站设计、成都外贸网站建设、手机APP定制开发、微信小程序、宣传片制作、LOGO设计等,帮助客户快速提升营销能力和企业形象,创新互联各部门都有经验丰富的经验,可以确保每一个作品的质量和创作周期,同时每年都有很多新员工加入,为我们带来大量新的创意。
2、在test.php文件内,创建一个测试的数组,例如,定义一个分类的数组,其对应的索引值分别为0,4,8。
3、在test.php文件内,使用array_values()方法将上一步的数据重新排序,并且从0开始,把重新排序的数组保存在$result变量中。
4、在test.php文件内,使用foreach方法遍历数组,其中$k为索引值,$v为索引值对应的数组值。
5、在test.php文件内,使用echo方法输出数组中的索引值和对应的数组值即可。
可以遍历两次$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遍历数组的4种方法总结,它分分别是foreach循环、each函数、list函数、for循环,需要的朋友可以参考下
在php中可以用来遍历数组的函数有很多,如有:for语句、list、each、foreach这四个函数,这也是在php中遍历数组的几个主要的函数,下面我来给大家介绍。
foreach遍历数组
我们在运用数组时,常常要遍历数组并获得各个键或者元素值,php提供了一些专门遍历数组的函数。这里先介绍foreach遍历数组函数的用法。
结构形式:
复制代码 代码如下:
foreach ( array_expression as $value ) statement
/* array_expression是要遍历的数组
as作用是将数组的值赋给$value
statement是后续语句
*/
实例1:
复制代码 代码如下:
'白色' ,
'black' = '黑色' ,
'red' = '红色' ,
'green' = '绿色',
'yellow' = '黄色');
foreach( $color as $c) echo $c ."
";
?
通过foreach不仅可以获得元素的值也可以获得键名,结构形式:
复制代码 代码如下:
foreach ( array_expression as $key = $value ) statement
将以上实例中第7行的代码:
复制代码 代码如下:
foreach( $color as $c) echo $c ."br";
改为:
复制代码 代码如下:
foreach( $color as $key = $c) echo $key.$c ."br";
each遍历数组
遍历数组是php数组操作一个重要的环节,除了前面提到的foreach函数,这里再介绍一个遍历数组的函数-each()。
用each()函数可以输出当前指针位置的键名和对应的元素值。可以使用”0″或”key”来访问键名(标识符),用”1″或”value”访问标识符对应的值。
实例:
复制代码 代码如下:
?php
$languages=array(1=--"php",
5="html",
10="css");
$a=each($languages); /* 第一次遍历数组 */
echo $a[0] ."t";
echo $a[1] ."br";
$a=each($languages); /* 第二次遍历数组 */
echo $a[key] ."t";
echo $a[value];
?
list遍历数组
函数list可以在遍历数组时一次赋给变量,通常和each()函数配合使用。用list()函数使访问each()返回的键和值变得更加简单了。
实例:
复制代码 代码如下:
?php
$date=array(1=--"Monday",
2="Tuesday",
3="Wednesday");
list($key,$value)=each($date); /* 遍历函数 */
echo "$key $value" ."br"; /* 输出第一个数组 */
$next=next($date); /* 指针后移 */
echo "$next";
?
ps:list()函数刚好与array()函数相反,array()将一系列数据构造成数组,而list()则将数组拆分成数据。
for遍历数组
除了php预定义的一些遍历数组函数,我们还可以利用for语句的循环特性将数组遍历输出。下面给出例子:
复制代码 代码如下:
?php
$a[]="张学友"; /* 定义数组 */
$a[]="刘德华";
$a[]="黎明";
$a[]="郭富城";
$s=count($a); /* 统计数组个数 */
for($i=0;$i$s;$i++){ /* 遍历数组 */
echo $a[$i] ."br /--"; /* 显示数组 */
}
?
注:foreach只能用于数组
第一种格式遍历给定数组$array,每次循环,当前单元的值被赋给 $value 并且数组内部的指针向前移一步(下一次循环中将会得到下一个单元)。
第二种格式也是遍历给定的数组$array,不同的是键名也参与了。在每次循环中将键值赋给$value,将键名赋给变量 $key
?
//第一种
$array=array(1,2,3,4);
foreach($array as $value){
echo $value." ";
}//输出结果为:1 2 3 4
//第二种
foreach($array as $key=$value){
echo $key."=".$value." ";
}//输出结果为:0=1 1=2 2=3 3=4
?