数组的概述及分类与数组的多种声明

<?php

/* 一、数组的概述
 *     1. 数组的本质:管理和操作一组变量,成批处理
 *     2. 数组是复合类型
 *     3. 因为php是弱类型的语言,数组中可以存储任意长度的数据,也可以存储任意类型的数据。模拟其他语言的功能。
 *  4. 数组就可以完成其它语言数据结构的功能(链表, 队列, 栈, 集合类).所以php开发的很快
 *        int a[10]={1,2,3,4,5,6,7,8,9,0};      
 
 * 二、数组的分类
 *     数组中存有多个单元,(单元称为元素)
 *     每个元素(下标[键]和值)
 *     单访问元素时候,都是通过下标(键)来访问元素
 *
 *     1. 一维数组, 二维数组, 三维数组 。。。 多维数组
 *    (数组的数组, 就是在数组中存有其它的数组)


 *    2. PHP中有两种数组
 *    索引数组:就是下标是顺序整数作为索引  
 *    关联数组:就是下标是字符串作为索引
 *
 *    下标(整数, 字符串)只有这两种


 *

 * 三、数组多种声明方式
 *
 *     1. 直接为数组元素赋值

           a.如果索引下标不给出,就会从0开始顺序索引
 *       b.如果给出索引下标,下一个就会是从最大的开始增1
 *       c.如果后面出现前面的下标,如果是赋值就是为前面的元素重新赋值

 *        d. 混合声明时,索引和关联不互相影响(不影响索引下标的声明)
 *     2. 使用array()函数 $a=array("Volvo"=>"XC90","BMW"=>"X5","Toyota"=>"Highlander")关联数组

                                      $a=array(1,"ligang","hello@ww",33)索引数组

                        $a=array("id"=>1,"name"=>"zhangsan","age"=>11,100=>"nan","ddd@qq")前三个为关联后两个为索引

                          for($i=0;$i<20;$i++)

                                  $a[]=$i;
 *     3. 使用其它的函数声明
 *        file();

 
 */
 
    //索引数组

    1、、、、、、、、、、、、、、、、、、、、             <?php
$user=array(
    array(1,"zhangsan",10,"man"),
    array(2,"zhangsan",10,"man"),//访问10;访问整条
    array(3,"zhangsan",10,"man")
);

echo ($user[1][2]);

echo '<pre>';
print_r($user[1]);
echo '</pre>';

echo '<pre>';
print_r($user);
echo '</pre>';

结果为:10

Array
(
    [0] => 2
    [1] => zhangsan
    [2] => 10
    [3] => man
)
Array
(
    [0] => Array
        (
            [0] => 1
            [1] => zhangsan
            [2] => 10
            [3] => man
        )

    [1] => Array
        (
            [0] => 2
            [1] => zhangsan
            [2] => 10
            [3] => man
        )

    [2] => Array
        (
            [0] => 3
            [1] => zhangsan
            [2] => 10
            [3] => man
        )

)

    
  2、、、、、、、、、、、、、、、、、、、、、、、、<?php
$user["id"]=1;
$user["name"]="zhangsan";
$user[]=10;
$user[6]="nan";
$user[]="aaa@cd";

    echo '<pre>';//The <pre> tag defines preformatted text.
    print_r($user);
    echo '</pre>';

print_r(array_keys($user));//返回user的小标的数组  Array ( [0] => 0 [1] => 1 [2] => 2 [3] => 3 )

输出:

Array
(
    [id] => 1
    [name] => zhangsan
    [0] => 10
    [6] => nan
    [7] => aaa@cd
)


print_r($user);//效果Array( [0] => Volvo [1] => BMW [2] => Toyota)


<?php
$user[]=1;
$user[]="zhangsan";
$user[]=10;
$user[6]="nan";
$user[]="aaa@cd";//注意此处的索引并不是4而是7

Array
(
    [0] => 1
    [1] => zhangsan
    [2] => 10
    [6] => nan
    [7] => aaa@cd
)


echo '<pre>';
print_r($user);
echo '</pre>';


3、、、、、、、、、、、、、、、、、、、、、<?php
$info=array(
    "user"=>array(
        array(1,"zhangsan",10,"man"),
        array(2,"zhangsan",10,"man"),//访问10;访问整条
        array(3,"zhangsan",10,"man")
        ),
    "score"=>array(
            array(1,100,10,23),
            array(2,4,10,444),
            array(3,55,10,3)
    ),
    "connect"=>array(
            array(1,100,"aaa@w"),
            array(2,4,"aaa@w"),
            array(3,55,"aaa@w")
    )            
);

echo '<pre>';
print_r($info);
echo '</pre>';

结果

Array
(
    [user] => Array
        (
            [0] => Array
                (
                    [0] => 1
                    [1] => zhangsan
                    [2] => 10
                    [3] => man
                )

            [1] => Array
                (
                    [0] => 2
                    [1] => zhangsan
                    [2] => 10
                    [3] => man
                )

            [2] => Array
                (
                    [0] => 3
                    [1] => zhangsan
                    [2] => 10
                    [3] => man
                )

        )

    [score] => Array
        (
            [0] => Array
                (
                    [0] => 1
                    [1] => 100
                    [2] => 10
                    [3] => 23
                )

            [1] => Array
                (
                    [0] => 2
                    [1] => 4
                    [2] => 10
                    [3] => 444
                )

            [2] => Array
                (
                    [0] => 3
                    [1] => 55
                    [2] => 10
                    [3] => 3
                )

        )

    [connect] => Array
        (
            [0] => Array
                (
                    [0] => 1
                    [1] => 100
                    [2] => aaa@w
                )

            [1] => Array
                (
                    [0] => 2
                    [1] => 4
                    [2] => aaa@w
                )

            [2] => Array
                (
                    [0] => 3
                    [1] => 55
                    [2] => aaa@w
                )

        )

)
$user[][]=1;
$user[][]=1;
$user[][]=1;

echo '<pre>';
print_r($user);
echo '</pre>';

Array
(
    [0] => Array
        (
            [0] => 1
        )

    [1] => Array
        (
            [0] => 1
        )

    [2] => Array
        (
            [0] => 1
        )

)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值