1.php的一些输出方式:
print_r(); 输出复杂数据类型 可以输出键和值echo 'xxx,xx' 简单数据类型
var _dump(); 复杂数据类型并且返回键值以及值的长度
2.php中变量
注意 php中通过echo输出的话。如果值为true则返回1,如果为false则返回一个空
一般通过var_dump(empty($name)); 判断,如果为空值则返回false .(相反的)
变量相关函数:
1. isset() 判断变量是否存在,是否定义以及变量值是否为null
2.empty() 判断变量是否为空
3. unset() 删除变量
注意:PHP中加号只代表运算符
双引号可以解析变量 单引号不能解析变量
二、数组
1.索引数组
$arr = array(1,2,3,true,"abc");
for循环遍历 获取数组长度使用count(数组对象)
2.关联数组
语法:array($key=>$value,$key=>$value...)
键值对描述数据 没有for循环,通过foreach遍历(与js语法不一样)
语法:
foreach(数组对象 as 键 => 值){
echo 数组对象.$key":"$value.'<br>'
}
打印整个数组使用 print_r($arr)
索引数组本质就是关联数组,可以用foreach遍历
3.深度数组 / 二维数组
遍历需要嵌套循环
## 深度数组
$arr3 = array(
"first" => [
"name" => 'dilireba',
"age" => 18
],
[
"name" => "gulinazha",
"age" => 19
]
);
foreach ($arr3 as $key => $value) {
// 第一次遍历拿到内层数组
echo $key.":".$value.'<br>';
foreach ($value as $subkey => $subvalue) {
// 第二次遍历拿到具体键值
echo $subkey.":".$subvalue.'<br>';
};
};
如果想要在函数内部引用外部变量,使用 global 变量名
关于POST GET
通过GET发送的请求使用 $_GET接收参数
通过post发送的请求使用 $_post接收参数
分割字符串使用换行符或者其他特殊字符必须使用双引号才能解析
print_r($SERVER); 打印关于提交的方法,可用于进行表单提交判断
<?php
// print_r($_SERVER["REQUEST_METHOD"]);
如果post提交过后才输出显示数据。如果不做判断会导致第一次打开页面时页面没有数据提交的时候报错。
if($_SERVER["REQUEST_METHOD"] === "POST") {
echo "用户名".$_POST["username"] ."密码".$_POST["psw"];
}
?>
$_SERVER["PHP_SELF"] :获取当前文件路径
文件上传
PHP中文件上传必须使用POST
文件上传会先转存到临时目录,需要通过方法来将文件移动到服务器,否则会被自动删除
客户端处理流程:
数据都储存在$_FILES中,打印可以看见数组
源文件的全路径就是指临时路径,注意目标文件的全路径是自己创建的指定文件夹中的随便起一个名字的图片文件。
完成之后自定义目录upload文件夹里面会出现一张名为suibian.png的图片,和上传的图片一样。证明成功。