创建 Web 应用程序
创建模板
在复杂的 Web 站点中,有一些特性会在站点的每个页面都用到,我们就可以将这些元素放在一个独立的页面。
创建模板可以将重复的内容和特定的页面的素材分开
比如:WP 中分为 header,sidebar footer 等模块
使用外部文件
- include 包含文件 如果 include 失败,PHP 会继续运行
- require 包含文件 如果 require 失败,PHP 会终止脚本执行
include ("test.html");
或者 include "test.html";
使用常量
- define() 函数定义并赋值常量
define ('CONSTANT_NAME',value)
常量名需全部大写
常量的引用很简单,直接 print CONSTANT_NAME
但是在单引号和双引号里面的常量就无法打印
- defined() 函数 如果提交的常量已经定义,返回 TRUE
使用日期和时间
- date 返回格式化的日期和时间
- time 返回当前时刻的时间戳
- mktime 返回给定时间和日期的时间戳
- date_default_timezone_set 设置时区
输出缓冲
某些函数,只能在没有任何东西被发送到浏览器之前调用,比如 header(),setcookie() 和 session_start(),如果在 Web 浏览器已经收到了一些文本、HTML或哪怕是一个空格之后, 调用这些函数,就会得到一个恼人的 HTTP 头已发送错误消息,这个时候采用输出缓冲可以解决这个问题
利用输出缓冲, HTML 和打印的数据将被放到缓冲中。当脚本执行结束后,缓冲将被发送到 Web 浏览器,或者如果需要的话,缓冲可以清空而不发送到 Web 浏览器
启用输出缓冲: 在页面顶端使用 ob_start 函数,在结尾调用 ob_end_flush 函数会将缓冲发送到 Web 服务器,调用 ob_end_clean 函数会删除缓冲的数据而不进行传输
缓冲区的大小可以在 php.ini 文件中设置,默认值为 4096 字节
- ob_get_length 返回缓冲内容长度
- ob_get_contents 返回缓冲区内容
- ob_flush 将当前缓冲区内容发送到 Web 浏览器并刷新缓冲区
- ob_clean 删除缓冲区的当前内容
处理 HTTP 头
Web 服务器通常需要用其他方式与客户端通信,这些通信需要用 HTTP 头实现
下面介绍用 header 函数重定向页面:
使用 PHP 重定向浏览器,需要发送一个 location 头:
header("Location: page.php")
通常后面会跟 exit();
取消当前脚本执行