一个。什么是数组
数组是一组具有一些共同特性的元素,包括相似性和类型。
每个元素由一个特殊的标识符(称为键)来区分,每个键都有一个值。
1。创建数组的两种方式:
1.1使用数组()函数
复制代码代码如下所示:
< PHP
用户名=阵列('alerk美元,玛丽,'lucy ',鲍勃,杰克,约翰,马克);
foreach($用户名为$name)
{
返回$名称。;
}
>

输出
alerk
玛丽
露西
鲍勃
杰克
约翰
作记号
1.2使用范围()函数
复制代码代码如下所示:
< PHP
$ =范围(0, 10);
foreach($数$num)
{
echo $民;
}
合信=范围(A,Z);
foreach($字母$信)
{
回音$字母。;
}
>

输出













C
D
E
F
G
H

J
K
l
M

o

Q
R

T
u
v
W
X
Y
Z
在2中访问数组元素的两种方式。环:
2.1周期
复制代码代码如下所示:
< PHP
第三个参数表示步长。
$数=范围(1,10,2);
($ i = 0;$ i <计数(数字);$ + +)
{
回声$ { };
}
>

输出





2.2 foreach循环
复制代码代码如下所示:
< PHP
合信=范围(A,H,2);
foreach($字母$信)
{
回音$字母;
}
>

输出

C
E
G
foreach也可以用来输出下标和数组的相应值
复制代码代码如下所示:
< PHP
合信=范围(A,G,2);
foreach($字母$键=值)
{
$;
}
>

输出
0 ---
1—C
2—E
3—G
的3.is_array()功能,这是用来确定变量是否为数组
复制代码代码如下所示:
< PHP
$数=范围(1,10,2);
如果(is_array($号))
{
foreach($数$num)
{
echo $民;
}
}
其他的
{
回波数;
}
>

的4.print_r功能打印容易理解有关变量
复制代码代码如下所示:
< PHP
为用户名=阵列(杰基,玛丽,'lucy ',鲍勃,马克,约翰);
print_r($用户名);
>

输出
数组({ 0 } { 1 } =杰基=玛丽{ 2 } = >露西{ 3 } =鲍伯{ 4 } = >标记{ 5 } >约翰)
在源代码中,您可以看到显示是:
阵列

{ 0 } >杰基
{ 1 } >玛丽
{ 2 } >露西
{ 3 } >鲍伯
{ 4 } >马克
{ 5 } >约翰

两。自定义键数组
1。如果不想创建一个默认下标为0的数组,可以使用以下方法创建一组字符串键
复制代码代码如下所示:
< PHP
初始化数组
userages美元=阵列(杰克= > 23,'lucy= > 25,马克= > 28);
对数组元素的访问
echo $ userages { }杰克'。;
echo $ userages { 'lucy}。;
echo $ userages { }马克'。;
>

2。将元素添加到自定义键数组中
复制代码代码如下所示:
< PHP
初始化数组
年龄=阵列(杰克美元= > 23);
附加元素
年龄'lucy'} {美元= 25;
{ } =马克美元的28岁;
foreach(美元美元美元时代键=值)
{
$;
}
>

三.在不创建数组的情况下直接添加元素。
复制代码代码如下所示:
< PHP
不要直接创建数组。
岁的杰克} = { $ 23;
年龄'lucy'} {美元= 25;
{ } =马克美元的28岁;
foreach(美元美元美元时代键=值)
{
$;
}
>

使用4。打印数组foreach循环
复制代码代码如下所示:
< PHP
岁的杰克} = { $ 23;
年龄'lucy'} {美元= 25;
{ } =马克美元的28岁;
foreach(美元美元美元时代键=值)
{
$;
}
>

5。每个()-返回数组中当前的键/值对,并将数组指针向前移动一步。
复制代码代码如下所示:
< PHP
岁的杰克} = { $ 23;
年龄'lucy'} {美元= 25;
{ } =马克美元的28岁;
每一美元(美元);
print_r(美元);
回声';
每一美元(美元);
print_r(美元);
回声';
每一美元(美元);
print_r(美元);
>

具有每个()函数的循环打印
复制代码代码如下所示:
< PHP
岁的杰克} = { $ 23;
年龄'lucy'} {美元= 25;
{ } =马克美元的28岁;
而(!$元素=($)
{
print_r($元);
回声';
}
>

另一种印刷
复制代码代码如下所示:
< PHP
岁的杰克} = { $ 23;
年龄'lucy'} {美元= 25;
{ } =马克美元的28岁;
而(!$元素=($)
{
echo $元{关键}。= >。美元币值的元素{ };
回声';
}
>

使用的6.list()函数将值分配给变量数组
复制代码代码如下所示:
< PHP
岁的杰克} = { $ 23;
年龄'lucy'} {美元= 25;
{ } =马克美元的28岁;
列表(姓名,年龄)=每个(年龄);
$;
>

用列表循环打印结果
复制代码代码如下所示:
< PHP
岁的杰克} = { $ 23;
年龄'lucy'} {美元= 25;
{ } =马克美元的28岁;
而(!!!列表(姓名,年龄)=
{
$;
}
>

输出
杰克= 23
露西= 25
标记= 28
使用的7.reset()函数,指向数组的内部指针到第一单元
复制代码代码如下所示:
< PHP
岁的杰克} = { $ 23;
年龄'lucy'} {美元= 25;
{ } =马克美元的28岁;
每一个(年龄);
每一个(年龄);
列表(姓名,年龄)=每个(年龄);
$;
数组在开始时重置为数组。
重置(年龄);
列表(姓名,年龄)=每个(年龄);
$;
>

输出
标记= 28
杰克= 23
8。array_unique()删除数组中重复的值
复制代码代码如下所示:
< PHP
$号=阵列(1,2,3,4,5,6,5,4,3,2,1,1,2,3,4,5,6);
返回a不包含数组的重复值。
结果=美元array_unique($号);
print_r($结果);
>
输出
数组({ 0 } = 1 { 1 } > 2 { 2 } = 3 { 3 } = 4 { 4 } = 5 { 5 } = 6)
9。array_flip()--在交换数组的键和值
< PHP
userages美元=阵列(杰克= > 23,'lucy= > 25,马克= > 28);
年龄= array_flip美元(美元userages);
print_r($岁);
>

输出
数组({ 23 } { 25 } =杰克=露西{ 28 } =马克)
三。数组中的数组
数组不一定是关键字和值的列表,数组也可以放在数组中。
复制代码代码如下所示:
< PHP
$ =数组(
阵列('apple ',6,28.8),
阵列('pear ',3,15.6),
阵列('banana ',10,4.6)
);
echo $产生{ 0 } { 0 }。|'。$产生{ 0 } { 1 }。|'。$产生{ 0 } { 2 }。;
echo $产生{ 1 } { 0 }。|'。$产生{ 1 } { 1 }。|'。$产生{ 1 } { 2 }。;
echo $产生{ 2 } { 0 }。|'。$产生{ 2 } { 1 }。|'。$产生{ 2 } { 2 }。;
>

输出
苹果| 6 | 28.8
梨| 3 | 15.6
香蕉| 10 | 4.6
在数组中用for循环打印数组
复制代码代码如下所示:
< PHP
$ =数组(
阵列('apple',6,28.8),
阵列('pear',3,15.6),
阵列('banana',10,4.6)
);
($ i = 0;$ i <计数($产生);$ + +)
{
对于($ = 0;$ <计数($产生{ $ });$ + +)
{
echo $产生{我} { }美元美元的|{J}.;
}
回声';
}
>

输出
|苹果| 6 | 28.8
|梨| 3 | 15.6
|香蕉| 10 | 4.6
二维数组
复制代码代码如下所示:
< PHP
$ =数组(
阵列('name' = 'apple ','amount ' = 6,'price ' = 28.8),
阵列('name' = 'pear ','amount ' = 3,'price ' = 15.6),
阵列('name' = 'banana ','amount ' = 10,'price ' = 4.6)
);
而(!!!列表($,$)=每个($生成))
{
而(!!!列表($ KEY2,2美元)=每(美元值))
{
回波|'。$ key2。= >。2美元;
}
回声';
}
>

输出
|名称= >苹果|金额= > 6 |价格= > 28.8
|名称= >梨|金额= > 3 |价格= > 15.6
|名称= >香蕉|金额= > 10 |价格= > 4.6
印刷用foreach更容易(推荐)
复制代码代码如下所示:
< PHP
$ =数组(
阵列('name' = 'apple ','amount ' = 6,'price ' = 28.8),
阵列('name' = 'pear ','amount ' = 3,'price ' = 15.6),
阵列('name' = 'banana ','amount ' = 10,'price ' = 4.6)
);
foreach(美元美元美元产生key1 =值)
{
foreach($ value1 value2 KEY2美元=美元)
{
回波|'。$ key2。= >。2美元;
}
回声';
}
>

输出
|名称= >苹果|金额= > 6 |价格= > 28.8
|名称= >梨|金额= > 3 |价格= > 15.6
|名称= >香蕉|金额= > 10 |价格= > 4.6
四。排序的数组
1的排序(排序)函数到英语
复制代码代码如下所示:

< PHP
水果=阵列('lemo美元,'banana ','apple ','pear);
回声原数组;
print_r($水果);
回声';
排序(水果);
回声排序数组;
print_r($水果);
>

输出
原始数组:数组({ 0 } = { 1 } = > >柠檬香蕉{ 2 } = { 3 } = > >苹果梨)
已排序的数组({ 0 }:阵列= >苹果{ 1 } = >香蕉{ 2 } = { 3 } = > >柠檬梨)
用2排序()函数对汉语进行排序
复制代码代码如下所示:

< PHP
水果=阵列('lemon美元','香蕉','苹果','梨');
回声原数组;
print_r($水果);
回声';
排序(水果);
回声排序数组;
print_r($水果);
>

输出:
原始数组:数组({ 0 } = { 1 } = { 2 } =柠檬香蕉香蕉梨= { 3 })
排序数组:数组({ 0 } { 1 } { 2 } >柠檬梨苹果{ 3 } >香蕉)
三.一种排序数组和保留指数的关系
复制代码代码如下所示:

< PHP
$水果=阵列(A = > 'lemon,B = > 'banana,C = > 'apple ',要' = > 'pear);
回声原数组;
print_r($水果);
回声';
Asort($水果);
回声排序数组;
print_r($水果);
>

输出
原始数组:数组({柠檬酸苹果香蕉梨= = })
已排序的数组:数组(例如柠檬梨
4。ksort --由键的数组排序
复制代码代码如下所示:

< PHP
水果=阵列(美元B = > 'lemon ',' ' = > 'banana ',要' = > 'apple,C = > 'pear);
回声原数组;
print_r($水果);
回声';
Ksort($水果);
回声排序数组;
print_r($水果);
>

输出
原始数组:数组({柠檬酸苹果香蕉梨=梨= { })
已排序的数组:数组({柠檬酸苹果香蕉梨= = })
5。rsort --反序排列
复制代码代码如下所示:

< PHP
水果=阵列('lemon美元','香蕉','苹果','梨');
回声原数组;
print_r($水果);
回声';
rsort($水果);
回声排序数组;
print_r($水果);
>

输出
原始数组:数组({ 0 } = { 1 } = { 2 } =柠檬香蕉香蕉梨= { 3 })
排序数组:数组({ 0 } = { 1 } = { 2 } =香蕉苹果梨柠檬={ 3 })
6。arsort --反向阵列和保留指数的关系
复制代码代码如下所示:

< PHP
$水果=阵列(A = > 'lemon,B = > 'banana,C = > 'apple ',要' = > 'pear);
回声原数组;
print_r($水果);
回声';
Arsort($水果);
回声排序数组;
print_r($水果);
>

输出
原始数组:数组({柠檬酸苹果香蕉梨= = })
已排序的数组:数组=香蕉苹果梨柠檬= })
7。-以相反的顺序排列krsort钥匙
复制代码代码如下所示:

< PHP
$水果=阵列(A = > 'lemon,B = > 'banana,C = > 'apple ',要' = > 'pear);
回声原数组;
print_r($水果);
回声';
Krsort($水果);
回声排序数组;
print_r($水果);
>

输出
原始数组:数组({柠檬酸苹果香蕉梨= = })
已排序的数组:数组=苹果梨香蕉
8。洗牌--数组的排列
复制代码代码如下所示:

< PHP
$水果=阵列(A = > 'lemon,B = > 'banana,C = > 'apple ',要' = > 'pear);
回声原数组;
print_r($水果);
回声';
洗牌(水果);
在阵列混乱后回声;
print_r($水果);
>

输出
原始数组:数组({柠檬酸苹果香蕉梨= = })
数组后的错误({ 0 } = { 1 } { 2 } >柠檬苹果香蕉梨= { 3 })
9。array_reverse --返回一个数组逆序单位
复制代码代码如下所示:

< PHP
$水果=阵列(A = > 'lemon,B = > 'banana,C = > 'apple ',要' = > 'pear);
回声原数组;
print_r($水果);
回声';
水果= array_reverse美元(美元的水果);
阵列反转后的回声;
print_r($水果);
>

输出
原始数组:数组({柠檬酸苹果香蕉梨= = })
反转后的数组:数组(苹果梨香蕉=柠檬)
10。array_unshift --插入一个或多个单位在数组的开始
复制代码代码如下所示:

< PHP
$水果=阵列(A = > 'lemon,B = > 'banana,C = > 'apple ',要' = > 'pear);
回声原数组;
print_r($水果);
回声';
array_unshift($水果,' Fei Zi ');
阵列后面的插入;
print_r($水果);
>

输出
原始数组:数组({柠檬酸苹果香蕉梨= = })
插入后的数组:数组({ 0个},{ })
11。array_shift删除数组的数组的数组的开始了
复制代码代码如下所示:

< PHP
$水果=阵列(A = > 'lemon,B = > 'banana,C = > 'apple ',要' = > 'pear);
回声原数组;
print_r($水果);
回声';
array_shift($水果);
移出阵列后的回声;
print_r($水果);
>

输出
原始数组:数组({柠檬酸苹果香蕉梨= = })
已移除数组:数组(例如香蕉梨)
12。array_rand --以一个或多个单位的随机数组
复制代码代码如下所示:

< PHP
水果=阵列('lemon美元','香蕉','苹果','梨');
回声原数组;
print_r($水果);
回声';
$newArr_key = array_rand ($fruits, 2);
回声随机数组;
echo $水果{ $ newarr_key { 0 } }。;
echo $水果{ $ newarr_key { 1 } };
>

输出
原始数组:数组({ 0 } = { 1 } = { 2 } =柠檬香蕉香蕉梨= { 3 })
随机数组:梨苹果
13。array_pop——数组的最后一个单元是冒出来(出栈)
复制代码代码如下所示:

< PHP
水果=阵列('lemon美元','香蕉','苹果','梨');
回声原数组;
print_r($水果);
回声';
array_pop($水果);
阵列喷出后的回声;
print_r($水果);
>

输出:
原始数组:数组({ 0 } = { 1 } = { 2 } =柠檬香蕉香蕉梨= { 3 })
一个弹出数组之后的数组({ 0 } = { 1 } = { 2 } =柠檬香蕉苹果)
14。array_push在数组的末尾按下一个或多个单位(栈)
复制代码代码如下所示:

< PHP
水果=阵列('lemon美元','香蕉','苹果','梨');
回声原数组;
print_r($水果);
回声';
array_push($水果,' Fei Zi ');
阵列喷出后的回声;
print_r($水果);
>

输出:
原始数组:数组({ 0 } = { 1 } = { 2 } =柠檬香蕉香蕉梨= { 3 })
一个弹出数组之后的数组({ 0 } = { 1 } = { 2 } =柠檬香蕉苹果梨{ 3 } = { 4 } > Fei Zi)
五。数组指针的操作
每个—返回数组中当前的键/值对,并将数组指针向前移动一步。
当前——返回数组中的当前单元
重置-将数组的内部指针指向第一个单元。
将数组的内部指针指向最后一个单元。
数组中的内部指针的下一个移动指针
POS的别名--当前()
沪指--内部数组指针指向

复制代码代码如下所示:
< PHP
水果=阵列('lemon美元','香蕉','苹果','梨');
print_r($水果);
回声';
echo'each():;
print_r(每($水果));
回声';
echo'current():;
回波(电流(水果));
回声';
echo'next():;
回声(下一个(水果));
回声';
echo'end():;
回声(结束(水果));
回声';
echo'prev():;
回声(沪指($水果));
回声';
echo'pos():;
回声(POS(水果));
回声';
>

输出:
数组({ 0 } { 1 } > { 2 } >柠檬香蕉香蕉梨= { 3 })
(每个):数组({ 1 } {值} = 0 =柠檬柠檬{ 0 } }键} = 0)
电流():香蕉
下一步:
结束():梨
沪指():苹果
苹果:
六。统计数组的个数
计算数组中的单元数或对象中属性的个数。
sizeof()的别名——计数
array_count_values --统计数组中的所有值的值的数目
复制代码代码如下所示:
< PHP
$号=数组(1, 3, 5,1, 3, 4,5, 65, 4,2, 2, 1,4, 4。
回波计数($号);
回声';
回声sizeof($号);
回声';
arraycount美元= array_count_values($号);
print_r($ arraycount);
>

输出
二十二
二十二
数组({ 1 } = 6 { 3 } > 2 { 5 } = 4 { 4 } = 7 { 65 } = 1 { 2 } = 2)
七。将数组转换为标量变量:提取()
数组中的每个元素都被转换成一个变量,变量名是数组元素的键,变量的值是值。数组元素的
复制代码代码如下所示:
< PHP
$水果=阵列(A = > 'apple,B = > 'banana,O = > 'orange);
提取(水果);
回声$ A;
回声$ B;
回声$ O;
>

输出
苹果
香蕉
橙色