数组的定义和遍历

拓展
常用函数
//生成随机数
echo rand(1,10);//范围在1-10之间

//日期时间函数
var_dump(time());//取当前时间的UNIX时间戳,是一串数字

date("Y-m-d h:i:s",time());//格式化日期时间戳
date("Y-m-d h:i:s D");//省略time(),获取当前时间有一个默认值,D英文显示星期


//数组
//C#中数组是连续的
//1.没有集合概念,
特点:可以存储任意类型的数据,可以不连续,可以是索引的,也可以是关联的;

定义数组
定义数组 方式一
$attr=array(1,2,3);//定义一个简单的索引数组

定义数组 方式二
$attr[]=1;
$attr[]=2;

var_dump($attr);

定义数组 方式三

$attr = array("one"=>"hello",
"two"=>100,
"three"=>10.9);
var_dump($attr);

//定义一个关联数组


$attr = array(
"hello",
"2"=>"222",
"world"
);
var_dump($attr);
//查看索引值,空的自动添加,小数当做字符串如果 key=0,第一个值会覆盖,保
证索引不重复

//数组取值
$attr=array(
"hello",
"world",
100,
10.3
);
echo $attr [0];//根据索引取值
echo $attr["three"];//根据key取value值

 

遍历数组
1.for 循环,适用于索引数组,无法使用连接数组

for ($i=0;$i<count($attr);$i++)
{
echo $attr[$i]."<br>";
}
//拼接起来


2.foreach遍历,适用于所有数组
foreach($attr as $v)
{
echo $v."<br>";

}
foreach($attr as $k=>$v)//第二种形式
{
echo $k."--".$v."<br>";
或者 echo "{$k}--{$v}<br>"
}


3.使用each()和list()结合遍历
var_dump(each($attr));//返回数组里面的当前元素上的详细内容
var_dump(each($attr));
var_dump(each($attr));

 

特殊的一种
$attr=array(1,2,3);//将右侧数组里的每个元素分别赋值给list()参数列表,注
意,右侧数组必须包含索引
list($a,$b,$c)=$attr;
echo $a;
echo $b;
echo $c;


while(list($k,$v)=each($attr));//赋值语句,执行失败返回一个falue

{
echo "{$k}--{$v}<br>";
}


4.指针遍历
$attr=array(

"one"=>"aaaa",
"two"=>"bbbb",
"three"=>"cccc"
);
echo current($attr);//取当前元素的value值

echo key($attr);//取当前元素的key

next($attr);//将数组里面的指针向下移
prev($attr);//将指针向上移
end($attr);//将指针指向最后一个
reset($attr);//将指针指向第一个,复位
echo current($attr);

结合起来使用,将所有元素遍历出来
do
{
echo current($attr)."<br>"
}
while(next($attr));
//使用do...while循环

 

posted @ 2016-06-02 16:56  庞某人  阅读(329)  评论(0编辑  收藏  举报