PHP——数组_学习笔记

数组

一:数组的分类
1.索引数组
下标是整数的数组,下标从0开始依次类推:

$arr=array('a','b','c','d');
echo $arr[1];

索引数组的三种赋值方式:
//第一种

$arr = array("a","b");

//第二种

$arr[2]='c';
$arr[5]='f';

//第三种

$arr2 = array("0"=>"苹果","1"=>"香蕉","10"=>"橘子");

索引数组的访问:
数组的变量名称后跟中括号的键值访问
arr[2];2: arr = array(“name”=>”leifeng”,”age”=>19,”sex”=>”男”);
echo arr[name];pre( arr);

两种赋值方式:
//第一种

$arr = array("name"=>"leifeng","age"=>19,"sex"=>"男");

//第二种

$arr['height']=170;

关联数组的取值:
数组名称加中括号键值方式,键值用中括号或者单引号包裹;

$arr['name'];

3:数组的下标

$arr = array("name"=>"leifeng",19,"sex"=>"男",20,100=>8,9,10);

    pre($arr);

    Array
    (
        [name] => leifeng
        [0] => 19
        [sex] => 男
        [1] => 20
        [100] => 8
        [101] => 9
        [102] => 10
    )

二.数组的遍历
1:for循环

    $arr1 =array("a","b","c","d","e");
    //for循环
    $num = count($arr);
    for($i=0;$i<$num;$i++){
        echo $arr1[$i]."<br>";
    }

2:foreach()循环

    $arr2 =array("name"=>"leifeng","age"=>19,"sex"=>"男");
    //foreach循环
    foreach($arr1 as $v){
        echo $v.'<br>';
    }
        foreach($arr2 as $k=>$v){
        echo $k.":".$v."<br>";
    }

3:while…list…each…循环
//while..list…each…

    while(list($key,$val)=each($arr2)){
       echo $key.":".$val.'<br>';
    }

4.多维数组的遍历

$arr = array("a","b",array("c","d",array("e","f")));

//for()循环
for($i=0;$i<count($arr);$i++){
    if(is_array($arr[$i])){
       for($j=0;$j<count($arr[$i]);$j++){
          if(is_array($arr[$i][$j])){
             for($k=0;$k<count($arr[$i][$j]);$k++){
                echo '|---'.$arr[$i][$j][$k].'<br>';
             }
          }else{
            echo '|--'.$arr[$i][$j].'<br>';
          }
       }
    }else{
        echo '|-'.$arr[$i].'<br>';
    }
}

echo '<hr color="red">';
//foreach循环
foreach($arr as $v){
    if(is_array($v)){
       foreach($v as $v2){
         if(is_array($v2)){
            foreach($v2 as $v3){
                echo '|---'.$v3.'<br>';
            }
         }else{
            echo '|--'.$v2.'<br>';
         }
       }
    }else{
        echo '|-'.$v.'<br>';
    }
}
echo '<hr color="red">';
//递归循环
function test($arr){
    foreach($arr as $v){
        if(is_array($v)){
             test($v);
        }else{
            echo '|-'.$v.'<br>';
        }
    }
}

test($arr);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值