/* 一、数组的概述
* 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 ) )