索引数组
关联数组
?
只有print_r()函数才可以输出数组
数组的创建
$name = 'lsy';
$age = 18 ;
?
$stu1[] = $name;
$stu1[] = $age;
print_r($stu1); // 0 lsy ? 1 18
echo $stu1[0]; //通过索引取值lsy
$stu2['name'] = 'lsy';
$stu2['age'] = '18';
?
print_r($stu2);// name lsy age 18
echo $stu2['age'];//通过键值取值
$stu3 = array("lsy",true,18,99);
print_r($stu3);//索引
?
$stu4 = array('name' => 'lsy' ,'age' => 18);
print_r($stu4);//关联
//增加key值
$stu3['pj'] = "good!";
print_r($stu3);
//删除key值
unset($stu3['pj']);
多维数组
数组中的元素也是数组
数组遍历
foreach ($stu3 as $i) {
echo "$i<br>";
}
//将数组中的值复制给$i
foreach ($stu4 as $i => $j) {
echo "$i<br>"; //name age
echo "$j<br>";//lsy 18
}
预定义全局数组
$name = "lsy";
var_dump($name);
echo "<hr>";
echo $GLOBALS['name']; //lsy,一个包含了全部变量的全局组合数组,变量的名字就是数组的键。
print_r($_SERVER);//一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等信息的数组。这个数组中的项目由 Web 服务器创建。
$_GET 通过 URL 参数传递给当前脚本的变量的数组。
$_POST当HTTP POST 请求的Content-Type 是 application/x-www-form-urlencoded(表单)或 multipart/form-data (文件上传)时,会将变量(变量名+变量值)以关联数组形式传入当前脚本。
$_FILES 通过 HTTP POST 方式上传到当前脚本的项目的数组。
<?php
//文件上传
/*var_dump($_FILES);
echo "<br>";
echo $_FILES["upfile"]["name"]."<br>";
echo $_FILES["upfile"]["tmp_name"]."<br>"; //程序执行结束,临时文件就立马删除了!!
sleep(20); //加了暂停,看一下临时文件*/
setcookie("username","bob",time()+3600);//当前时间延迟3600s
var_dump($_COOKIE);//5.2.17 可以获取到cookie
echo "<br>";
var_dump($_REQUEST);
echo "<br>";
var_dump($_GET);
echo "<br>";
var_dump($_POST);
//js自己整
//php服务器传递
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<h1>文件上传测试</h1>
<form method="get" enctype="multipart/form-data">
<input type="text" name="id" >
<input type="submit" name="button" value="上传文件">
</form>
</body>
</html>
$_COOKIE 通过 HTTP Cookies 方式传递给当前脚本的变量的数组
$_SESSION 当前脚本可用 SESSION 变量的数组
$_REQUEST 默认情况下包含了 $_GET ,$_POST 和 $_COOKIE 的数组
$_ENV 通过环境方式传递给当前脚本的变量的数组
处理数组的相关函数
count()#统计数组中单元个数或者对象中属性个数
array_count_values()#统计元素出现的次数并返回一个数组
in_array()#检查数组中是否存在某个值,区分大小写,返回布尔值
array_key_exists()#检查是否存在某个key值,返回布尔值
|