数组
方法一
变量名称【索引值】=数据;
变量名称【】=数据;//不写索引值默认是所以数组,从0开始。
方法二
变量名称=array{
索引值=>数据;
…
};
索引,你也可以理解为目录,就相当于给里面的每一个数起一个名字,
名字如果取得是整形,那么这个数组,就是索引数组 。
如果名字字符串类型,那么这个数组就是关联数组。
可得,索引值重复的值上方的值会被下方覆盖。
为了能更清晰的观察,网页界面右键
Array是输出的意思。
或是
使用array()语言创建数组
(length=6)
通过=>可更换索引值
<?php
$student=array(10,
'得分',
22=>true,
60.5);
var_dump($student);
或是
<?php
$student=array(
'num'=>10,
'nuc'=>11,
'n'=>'得分'
);
var_dump($student);
echo $student['n'];
索引值也可以为数组
当查询某个数的时候,可以用图下表示
echo $student[索引值];
多维数组
在同一个数组中,存储任何类型的数据,
<?php
$student=array(
0=>array('num'=>10,'nuc'=>11,'n'=>'得分'),
1=>array('num1'=>10,'nuc1'=>11,'n1'=>'得分1')
);
var_dump($student);
注意逗号!array后面最后一个数带不带逗号都能运行
数组的遍历
count
遍历数组:每个都经历一边的意思。
<?php
$student=array(
'a','c','d','x','s','z'
);//count(数组)返回值里面数据的个数,还可以获得多维数组的个数
echo count($student);
count默认获取第一层,例如:
要想全部获取,
<?php
$student=array(
array(1,2,3),
array(4,5,6),
);//count(数组)返回值里面数据的个数,还可以获得多维数组的个数
echo count($student,1);//2+6=8
使用循环输出数组
for循环
<?php
$arr=array(
'a','c','d','x','s','z'
);//count(数组)返回值里面数据的个数,还可以获得多维数组的个数
for($i=0;$i<count($arr);$i++){
echo $arr[$i];
echo "<br />";
}
echo count($arr);
但是关联数组,中for循环不可用。
foreach()PHP内核提供的
格式如图所示,看看就行!
<?php
$arr=array(
'name'=>'成功',
'num'=>10
);
foreach($arr as $value){
echo $value.'<br />';
}
如若,想显示数组变量,则可书写如下(一维数组)
<?php
$arr=array(
'name'=>'成功',
'num'=>10
);
foreach($arr as $key=>$value){//自己定义
echo $key.'=>'.$value.'<br />';
}
对于多维数组
<?php
$arr=array(
'name'=>'成功',
'num'=>10,
array(
1,2,3
)
);
foreach($arr as $value){//自己定义
echo $value.'<br />';
}
使用echo输出,会将array中的视为一个整体,即如图所示
应将echo改为var_dump();输出即可
进行多重嵌套
例如
<?php
$arr=array(
array(1,2,3),
array(1,2,3,'j'),
array(1,'g',2,3,9)
);
foreach($arr as $value){//自己定义
var_dump($value);
}
再加一层嵌套
<?php
$arr=array(
array(1,2,3),
array(1,2,3,'j'),
array(1,'g',2,3,9)
);
foreach($arr as $value){//自己定义
foreach($value as $value1){//自己定义
echo $value1.'<br />';
}
}
即可显示里面的内容。
与html相结合
<?php
$students=array(
array('张三','d',true,3),
array('李四','j',false,7),
array('王五','g',true,2)
);
echo'<table border=1>';//带进表格
foreach($students as $val){
if($val[2]===true){
$val[2]='男';
}
else{
$val[2]='女';
}
echo "<tr><td>{$val[0]}</td><td>{$val[1]}</td><td>{$val[2]}</td><td>{$val[3]}</td></tr>";
}
echo'</table>';
?>
可得
预定义超全局数组的变量
已经定义好了(存在)的变量(存放的数据的类型是数据)
超全局:超级全局变量,作用域(有效区域)!
转换至如下!
传递数据(提交数据)给服务器端的两种方式
GET方式(比较小,不太安全)
至如下
比如:?参数名=参数值&参数名=参数值…
在服务器端(请求PHP文件)这边可以通过
G
E
T
来获取到,
_GET来获取到,
GET来获取到,_GET索引值为参数名,索引对应的数据就是参数值。
POST方式
比如表单可以通过POST发送过来,可以通过$_POST来获取!
处理数值的相关函数
简单写一下,由于博客已经发布,,,(我没上传,丢了)
array_count_values()统计数组中所有数出现的个数
<?php
$array = array(1,3,3,"txt",3);
print_r(array_count_values($array));
array_key_exists查找键名
<?php
$array = array(1=>3,'3'=>"txt");
var_dump(array_key_exists('3',$array));
array_search()与查找数值中的数类似,除了比较值,还会比较类型
<?php
$array = array('1'=>1,'3'=>"txt");
var_dump(array_search('1',$array,true));
若去掉true表示结果与 array_count_values()类似
<?php
$array = array(1=>1,'3'=>"txt");
var_dump(array_search('1',$array,true));
count统计数值中的数
<?php
$array = array('1'=>1,'3'=>"txt");
var_dump(count($array));
in_array检查数值中是否出现某个数(返回对或者错)
<?php
$array = array('1'=>1,'3'=>"txt");
var_dump(in_array(1,$array));
与上类似加true,可比较类型
list把数值中的值赋给变量
<?php
$arr = array(1,2,4);
list($a,$b,$c)=array(1,2,4);
echo $a;
注意顺序,反正我的不是从右往左
<?php
list($a[],$a[],$a[])=array(1,2,4);//从右往左
print_r($a);
assort对数排序
<?php
$arr=array('hn'=>1,'hdd'=>8,'vv'=>2,'hd'=>4);//从右往左
asort($arr);
print_r($arr);
array_filter用回调函数过滤数组的单元
这莫可爱(让我摸摸的)小猫咪…要官宣一下!