第四章处理数据处理PHP数组-郑阿琦
1。阵列处理:1.1数组的创建和初始化:
的1.arrary()函数创建一个数组,默认的0个元素是数组的第一个元素。
伯爵()和sizeof()函数得到的数据元素个数
2。使用变量设置数组
(紧凑)在当前符号表中查找变量名并将其添加到数组的输出中,键变量名和变量内容成为键值。
复制代码代码如下所示:
< PHP
$ = 10;
$;
$array =阵列(1,2,3);
为创建一个数组=紧凑(民
print_r($ NewArray);
结果
数组({ = } 10)字符串({ 0 } > 1 { 1 } > 2 { 2 } = 3)
* /
>
提取()将数组中的元素变为变量。
复制代码代码如下所示:
< PHP
$array =阵列(key1= > 1,键= 2,KEY3= 3);
提取(数组);
回声美元美元美元KEY1 KEY2 KEY3 ; / /输出123
>
三.使用两个数组创建数组
复制代码代码如下所示:
array_combine(数组的键,数组的值)
< PHP
美元=阵列(‘绿色',','');
$ =阵列('volcado ','apple ','banana);
C = array_combine美元($,$);
print_r($ C);
>
4。设置指定范围的数组。
范围()
5。自动设置数组
1.2键与值运算
本节仅用于常用。
检查是否有键和值的数组可以used.array_key_exists(in_arrary,isset()函数),检查数组的名称,当名称为空,isset(假)和array_key_exists()返回,返回true。
,array_search()函数来检查数组的核心价值存在和不归零。
键()函数可以获取当前单元格数组键。
列表()函数,它将数组的值赋给指定的变量,在数组遍历中非常有用。
< PHP
$ ARR =阵列(红
列表($红、蓝白美元,美元)= $ ARR;
$;
蓝色;蓝色
白;
。(array_fill)和array_fill_keys()可以使用数组的值和关键职责给予充
。(array_filp)可以在一个数组的键和值的交换,如果数组中的交换具有同样的价值,同样的价值为核心价值的最后预订后
。(array_keys)和array_values()函数可以在键和值的数组实现,并保存到一个新的数组。
。array_splice(阵列输入美元,抵消{ int int美元,美元长{,} }替换数组中删除一个或多个单位)的阵列和取代它与其他价值。
。array_unique(),可以删除数组中重复的值,返回一个新数组,而不破坏原有的阵列。
1.3数组的遍历与输出
1。使用while循环访问数组
使用时,列表(),每个()函数遍历数组
2。for循环访问数组
三.使用foreach循环访问数组
复制代码代码如下所示:
< PHP
数组(红色
foreach(美元的颜色值)
{
返回值。
}
Foreach ($color as $key=>$value)
{
回波键。$。;输出数组键和值
}
>
在案例4.1中,在页面上生成一个文本框,用户输入学生成绩。提交表单后,分数的值小于60分,计算出平均分数后计算输出。
复制代码代码如下所示:
< PHP
;创建一个新窗体
用于($ i = 1;$ i < 6;$ + +);生成的文本框
{
文本框是数组名称的名称。
学生;
}
;提交按钮
;
如果(isset($ _post { 'bt ' })) / /检查提交按钮被按下
{
$ = 0;总分数被初始化为0。
$ k=0;
研究_post美元美元= { 'stu}; / /得到所有的文本框的值并将数组$斯图
美元=计数(学生);计算计算数组元素的数目
您输入的结果是:;
foreach($斯图达评分)使用foreach / /环通过研究美元阵列
{
回声$ ;接收器输出值
总和= $总和+分数;计算总得分
如果(分数<60)/判断分数小于60
{
$ SCO =千分之千美元=分数;小于60的分数,分配给一个SCO的数组的值
1个索引数组
}
}
回声少于60个分数是:;
for($ = 0;$ <计数($ SCO));使用for循环输出SCO数组
回声$ SCO { }。;
平均值= $总和;$
回声平均值:$ ;平均输出
}
>
1.4数组的排序
1。升序排序。排序(数组{ int美元,sort_flags })
注:混合类型值,当您订购它一样小,因为可能的错误。
(一)还可以升阶,是对数组的排序值,但它也保持已排序的数组的键和值之间。
(ksort)阵列的名称排序,相关性排序关键字和值没有变化。
2。降order.rsort()(),(),()krsort arsort
3的排序。多维数组。
4。重新排列数组。
洗牌()函数。函数用随机序列数组,并删除原名称
array_reverse()函数。以相反的顺序排列数组。
5。自然排序
Natsort()。对案件和案件的敏感性
1.5其他操作
1。合并数组
array_merge($美元array1,array2)。合并后,经过一个尺寸为unit.array_merge_recusive返回的数组(数组)可以合并现有的阵列结构下。
2的堆栈操作。阵列。
出栈:array_pop($ ARR);
栈:array_push($ ARR,瓦尔河);
三.获取数组当前单元
1。当前()函数可以获得数组指针指向的单位的值,但不移动数组的内部指针。
2。二($ ARR),指针移动到下一个单元。
三.端($ ARR)移动指针到尾。
4。数组的计算
在计数计算数组元素的个数()(),sizeof()
的array_count_values()函数可以计算时间值数组中出现次数
示例:4.2个处理表数据
接收学生输入的学习内容、姓名、成绩等信息,将接收到的信息放入数组中,按升序排列,然后用表格输出。
复制代码代码如下所示:
不.
全名
成就
< PHP
对于($ i = 0;$ i < 5;$ + +)/文本循环生成表框架
{ >
注:学校编号不能重复。
< PHP
如果(isset($ _post { 'bt_stu ' })) / /判断是否按下按钮
{
XH = { 'xh美元美元_post}; / /接收所有的数值存储在数组XH
XM = { 'xm美元美元_post}; / /收到的所有名字的值存储在数组XM
CJ = { 'cj美元美元_post}; / /接收所有的性能值存储在数组的CJ
array_multisort(美元美元美元CJ,XH,XM); / /整理上述三美元主阵列阵列,CJ
为($我= 0;$我<计数($ XH);$我+ +)
{我} =美元和美元的阵列($ XH {我},{我} XM美元美元美元美元,CJ {我}); / /三值由一个二维数组和数组$
下列排序结果如下:;
第一个表
学校名称结果;
foreach(美元和美元价值)使用foreach / /循环和数组元
{
列表(stu_number美元美元美元,stu_name,stu_score)=价值(名单); / /使用函数将数组中的变量值
输出内容表
回声stu_number美元美元美元stu_name stu_score ;
}
回声;
重置($);指针重置$和数组
虽然(list,$)=每个($))while循环遍历数组
{
列表(stu_number美元美元美元,stu_name,stu_score)=价值;
如果($ stu_number = = 081101)检查是否数量/价值081101
{
;
回声stu_number美元的名字。是的。stu_name美元。。
回声的结果是:stu_score美元;
中断;查找循环结束
}
}
}
>