①定义数组
<body>
<?php
$a=array();//定义空数组
$a=array(1,2,3,4,5);//给数组赋值,索引从0开始.
?>
</body>
②关联数组
<body>
<?php
$a=array("code"=>"p001","name"=>"张三");
echo $a["name"];
echo $a["code"];
?>
</body>
显示:
③遍历数组
1 for循环遍历
<body>
<?php
$arr=array("p001","张三",1,"n001","1988-2-3");
for($i=0;$i<count($arr);$i++){
//echo $arr[$i] ,"<br>";(两种写法都可以)
echo "{$arr[$i]}<br>";
}
?>
</body>
显示:
2 foreach遍历
<body>
<?php
$arr=array("p001","张三",1,"n001","1988-2-3");
foreach($arr as $v){
echo"{$v}<br>";
}
?>
</body>
显示:
<body>
<?php
$arr=array("p001","张三",1,"n001","1988-2-3");
foreach($arr as $k=>$v){
echo"{$k}-{$v}<br>";
}
?>
</body>
显示:
④list()和each()函数配合遍历数组
<body>
<?php
$arr=array("p001","张三",1,"n001","1988-2-3");
$al=each($arr);//取出数组当前指针指向元素的内容交给另一个数组
list($a,$b,$c)=$arr;//前数组里面的元素赋值给一组变量
var_dump($a);
?>
</body>
显示:
⑤指针遍历
echo key($arr);//取当前指针指向元素的索引
echo current($arr);//取当前指针指向元素的值
next($arr);//将指针往下调一个
prev($arr);//将指针往上调一个
end($arr);//将指针指向最后一个元素
reset($arr);//将指针位置重置
<body>
<?php
$arr=array("p001","张三",1,"n001","1988-2-3");
do{
echo key($arr);
echo current($arr),"<br>";
}
while(next($arr))
?>
</body>
显示:
二维数组
<body>
<?php
$arr=array(
array(1,2,3),
array(4,5,6),
array(7,8,9)
);
echo$arr[1][1];
?>
</body>
输出结果:5 (取arr索引为1的数组中的索引为1的值)
<body>
<?php
$arr=array(
array(1,2,3),
array(4,5,6),
array(7,8,9)
);
foreach($arr as $v){
echo"{$v[0]}-{$v[1]}-{$v[2]}<br>";
}
?>
</body>
显示: 显示的是全部的值
嵌套
<body>
<?php
$arr=array(
array(1,2,3),
array(4,5,6),
array(7,8,9)
);
foreach($arr as $v){
foreach($v as $v1){
echo"{$v1}<br>";
}
}
?>
</body>
显示:
例子:
<body>
<?php
$arr=array(
array("n001","汉族"),
array("n002","回族"),
array("n003","满族"),
array("n004","维吾尔族"),
);
echo"<select>";
foreach($arr as $v){
echo"<option>{$v[1]}</option>";
}
echo"</select>";
?>
</body>
输出:
常用函数
<body>
<?php
$arr=array(1,2,3,4,5);
echo in_array(3,$arr);//判断3这个值是否存在于数组中
?>
</body>
输出:1 存在就显示1,不存在显示0
<body>
<?php
$arr=array(1,2,3,4,5);
var_dump(array_reverse($arr));//翻转数组
?>
</body>
显示:
去重
<body>
<?php
$arr=array(1,2,2,3,3,4,5);
var_dump(array_unique($arr));
?>
</body>
显示:
删除数组元素
<body>
<?php
$arr=array(1,2,2,3,3,4,5);
unset($arr[1]);//删除索引为1的元素
var_dump($arr);
?>
</body>
显示:
重新索引
<body>
<?php
$arr=array(1,2,2,3,3,4,5);
var_dump(array_values($arr));
?>
</body>
显示:
追加元素:
<body>
<?php
$arr=array(1,2,2,3,3,4,5);
array_push($arr,"100");//加了一个100的元素
var_dump($arr);
?>
</body>
显示: