一. 画图分析php程序的运行原理
1. 客户通过浏览器发出http请求: index.php, 访问一个Web应用程序
2. web服务器接受到这个请求,发现是访问Web应用程序,于是通过CGI协议,转发给Zend虚拟机处理
3. CGI启动Zend虚拟机,对php脚本进行解析并执行,执行完毕输出html,并关闭Zend虚拟机
4. CGI将执行结果返回到web服务器, 并由它返回到客户端, 最终完成一个完整的http请求响应过程
二. GET请求与POST请求的区别
GET和POST是HTTP请求的两种基本方法,最直观的区别就是:GET把参数包含在URL中传递,POST通过请求头传递参数。
更多的不同:
GET在浏览器回退时是无害的,而POST会再次提交请求。
GET产生的URL地址可以被收藏,而POST不可以。
GET请求会被浏览器主动缓存,而POST不会,除非手动设置。
GET请求只能进行URL编码,而POST支持多种编码方式。
GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
GET请求在URL中传送的参数是有长度限制的,而POST没有。
对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
三. 如何将php脚本嵌入到html代码中
在常规的 HTML 中嵌入 PHP 代码只需要添加一个<?php?>标签即可,在标签内部写上php代码。
创建一个 hello 脚本,命名为 hello.php:
<html> <head> <title>PHP Test</title> </head> <body> <?php echo '<p>Hello World</p>'; ?> </body> </html>
上面的HTML代码中,在PHP代码中打印 Hello。集成PHP和HTML是非常简单的事情。
四. php应用程序的基本结构与include的作用
通过 include 或 require 语句,可以将 PHP 文件的内容插入另一个 PHP 文件(在服务器执行它之前)。
include 和 require 语句是相同的,除了错误处理方面:
require 会生成致命错误(E_COMPILE_ERROR)并停止脚本
include 只生成警告(E_WARNING),并且脚本会继续
因此,如果我们希望继续执行,并向用户输出结果,即使包含文件已丢失,那么请使用 include。否则,在框架、CMS 或者复杂的 PHP 应用程序编程中,请始终使用 require 向执行流引用关键文件。这有助于提高应用程序的安全性和完整性,在某个关键文件意外丢失的情况下。
包含文件省去了大量的工作。这意味着我们可以为所有页面创建标准页头、页脚或者菜单文件。然后,在页头需要更新时,我们只需更新这个页头包含文件即可。