1.header()函数

由来与作用:header() 是 PHP 系统函数,用于向客户端发送原始的 HTTP 报头。

header() 函数常用功能:
1)设置文档类型及编码
2)页面重定向

1)设置文档类型及编码
设置文档类型以及编码,这将决定浏览器将以什么形式、什么编码来显示当前页面。


重点:

语法格式:

header(“content-type:文档类型; charset=字符集编码”);

案例:

  1. <?php
  2. header("content-type:text/html;charset=utf-8");
  3. echo "<h2>设置文档类型及编码<h2>";

温馨提示:

1、在 header() 函数之前,不能有任何形式的输出。
2、纯 php 代码文件中,“?>”可以省略不写。


常用文档类型:

文件扩展名 Content-Type(Mime-Type) 描述
.txt text/plain 纯文本类型
.html text/html 文本的HTML类型
.xml text/xml 文本的XML类型
.jpg、.jpeg image/jpeg jpeg格式的图像类型
.gif image/gif gif格式的图像类型
.png image/png png格式的图像类型
.ppt application/vnd.ms-powerpoint microsoft powerpoint类型
.pdf application/pdf pdf文档类型
.mp3 audio/mp3 mp3音频文件类型
.mp4 video/mpeg4 mp4视频文件类型
.avi video/avi avi视频文件类型

注:文档类型,除了上面列举的以外还有很多,在此就不再一一列举了。
常用字符集编码:

字符集编码 语言 占用空间
gb2312 简体中文 一个汉字占用两个字节存储空间
gbk 简繁体中文 一个汉字占用两个字节存储空间
utf-8 各国文字 一个汉字占用三个字节存储空间

页面重定向
页面重定向,用于实现浏览器页面的自动跳转。
个人感觉这个东西有妙用

语法格式:

header(“location : 跳转地址”);

案例:

  1. <?php
  2. header("location:http://www.baidu.com");

补充:请注意 header() 必须在任何实际输出之前调用,不管是普通的 HTML 标签,还是文件或 PHP 输出的空行,空格。

2.字符串拼接

字符串拼接,可以将两个或多个字符串拼接成一个新的字符串。

PHP中,常用拼接字符串的方法,有以下两种:

1、连接运算符“.”
连接运算符,可以将运算符左右两侧的字符串,拼接成一个新的字符串。
案例:

  1. <?php
  2. header("content-type:text/html;charset=utf-8");
  3. $userName = "张小明";
  4. $age = 15;
  5. //通过连接运算符的方式,拼接字符串
  6. echo "姓名为:".$userName.",年龄为:".$age; //输出结果:姓名为:张小明,年龄为:15

由于以前用+号当连接符别用错了

2、内嵌变量
PHP允许我们在双引号的字符串中,通过嵌入变量名的方式,来拼接字符串。
第一章第二节 - 图1示例

  1. <?php
  2. header("content-type:text/html;charset=utf-8");
  3. $userName="张小明";
  4. $age=15;
  5. //通过内嵌变量的方式,拼接字符串
  6. echo"姓名为:{$userName},年龄为:{$age}<br/>";//输出结果:姓名为:张小明,年龄为:15
  7. echo"姓名为:$userName,年龄为:$age <br/>";//输出结果:姓名为:张小明,年龄为: 15

注意:内嵌变量在不使用 {} 时,变量名可能会与其他字符发生混淆,为了避免这种情况,我们可以在变量名的前后添加空格。

3.属于php的表单处理

介绍:表单是 PHP 与 Web 页面交互的方法之一,而表单提交数据有两种请求方式,即 GET 请求方式和 POST 请求方式。
关键点:针对于表单的两种提交方式, PHP 提供了三个全局变量,分别为 $_GET、$_POST、$_REQUEST,用于获得表单提交的数据。
1、$_GET
$_GET 用于获得表单 GET 请求方式提交的数据。
语法格式:
$变量 = $_GET[“表单元素名”];
建立一个 GET 请求方式的表单页面,名称为 index.php,代码如下:
第一章第二节 - 图2示例

  1. <!DOCTYPEhtml>
  2. <html>
  3. <head>
  4. <title>GET方式的表单</title>
  5. <metacharset="utf-8"/>
  6. </head>
  7. <body>
  8. <formname="frm"method="get"action="check.php">
  9. 登陆名称:<inputtype="text"name="userName"size="20"/><br/>
  10. 登陆密码:<inputtype="password"name="password"size="20"/><br/>
  11. <inputtype="submit"value="登陆"/>
  12. </form>
  13. </body>
  14. </html>

在 index.php 的同级目录下,建立 check.php 文件,代码如下:

第一章第二节 - 图3示例

  1. <?php
  2. header("content-type:text/html;charset=utf-8");
  3. //获得GET表单提交的数据
  4. $userName=$_GET["userName"];
  5. $password=$_GET["password"];
  6. //输出接收到的表单数据
  7. echo"接收到的登陆名称:{$userName}<br/>";
  8. echo"接收到的登陆密码:{$password}<br/>";

2、$_POST
$_POST 用于获得表单 POST 请求方式提交的数据。

语法格式:
$变量 = $_POST[“表单元素名”];

建立一个 POST 请求方式的表单页面,名称为 index.php,页面代码与 GET 请求方式的表单页面几乎一样,只不过把

标签的 method 值设置为 post,代码如下:

第一章第二节 - 图4示例

  1. <!DOCTYPEhtml>
  2. <html>
  3. <head>
  4. <title>POST方式的表单</title>
  5. <metacharset="utf-8"/>
  6. </head>
  7. <body>
  8. <formname="frm"method="post"action="check.php">
  9. 登陆名称:<inputtype="text"name="userName"size="20"/><br/>
  10. 登陆密码:<inputtype="password"name="password"size="20"/><br/>
  11. <inputtype="submit"value="登陆"/>
  12. </form>
  13. </body>
  14. </html>

check.php文件内容如下:

第一章第二节 - 图5示例

  1. <?php
  2. header("content-type:text/html;charset=utf-8");
  3. //获得POST表单提交的数据
  4. $userName=$_POST["userName"];
  5. $password=$_POST["password"];
  6. //输出接收到的表单数据
  7. echo"接收到的登陆名称:{$userName}<br/>";
  8. echo"接收到的登陆密码:{$password}<br/>";

3、$_REQUEST
$_REQUEST 用于获得表单任何请求方式提交的数据。

语法格式:
$变量 = $_REQUEST[“表单元素名”];
建立一个表单页面,名称为 index.php,代码如下:

  1. <!DOCTYPEhtml>
  2. <html>
  3. <head>
  4. <title>表单</title>
  5. <metacharset="utf-8"/>
  6. </head>
  7. <body>
  8. <formname="frm"method="post"action="check.php">
  9. 登陆名称:<inputtype="text"name="userName"size="20"/><br/>
  10. 登陆密码:<inputtype="password"name="password"size="20"/><br/>
  11. <inputtype="submit"value="登陆"/>
  12. </form>
  13. </body>
  14. </html>

php代码

  1. <?php
  2. header("content-type:text/html;charset=utf-8");
  3. //获得表单提交的数据
  4. $userName=$_REQUEST["userName"];
  5. $password=$_REQUEST["password"];
  6. //输出接收到的表单数据
  7. echo"接收到的登陆名称:{$userName}<br/>";
  8. echo"接收到的登陆密码:{$password}<br/>";

注:我们可以尝试着修改 index.php 文件中 标签的 method 属性,让表单以不同的请求方式进行提交,而 check.php 文件的输出结果都是相同的

4.经典传参套路

URL 传参也叫问号传参,是 PHP 与 Web 页面交互的方法之一。

URL 传参,模拟表单 GET 请求方式,在页面跳转的过程中,通过 “?” 在 URL 地址中添加参数 ,用于实现跨页面传参的功能。
语法格式:
http://localhost/xxx.php?参数名=参数值&参数名=参数值
建立一个名称为 index.php 的页面,代码如下:
第一章第二节 - 图6示例

  1. <!DOCTYPEhtml>
  2. <html>
  3. <head>
  4. <title>URL传参</title>
  5. <metacharset="utf-8"/>
  6. </head>
  7. <body>
  8. <!--通过超链接,实现URL传参-->
  9. <ahref="check.php?id=1&name=Tom&age=15">跳转页面</a>
  10. </body>
  11. </html>

php代码

<?php
header("content-type:text/html;charset=utf-8");
//获得URL中的参数
$id=$_GET["id"];
$name=$_GET["name"];
$age=$_GET["age"];
//输出接收到的数据
echo"id:{$id}<br/>";
echo"name:{$name}<br/>";
echo"age:{$age}<br/>";