一、什么是PHP?
PHP(Hypertext Preprocessor),超文本预处理器。
PHP开发历史
Zend Technologies的创办人之一 - Andi Gutmans
Zend Technologies的创办人之一 - Zeev Suraski
PHP原本的简称为Personal Home Page[5],是拉斯姆斯·勒多夫为了要维护个人网页,而用c语言开发的一些CGI工具程序集,来取代原先使用的Perl程序。最初这些工具程序用来显示拉斯姆斯·勒多夫的个人履历,以及统计网页流量[6]。他将这些程序和一些窗体解释器集成起来,称为PHP/FI。PHP/FI可以和数据库连接,产生简单的动态网页程序。拉斯姆斯·勒多夫在1995年6月8日将PHP/FI公开发布,希望可以透过社群来加速程序开发与查找错误[7]。这个发布的版本命名为PHP 2,已经有今日PHP的一些雏型,像是类似Perl的变量命名方式、窗体处理功能、以及嵌入到HTML中运行的能力。程序语法上也类似Perl,有较多的限制,不过更简单、更有弹性。[6]
在1997年,任职于Technion IIT公司的两个以色列程序员:Zeev Suraski和Andi Gutmans,重写了PHP的语法分析器,成为PHP 3的基础,而PHP也在这个时候改称为PHP: Hypertext Preprocessor.[6]。经过几个月测试,开发团队在1997年11月发布了PHP/FI 2,随后就开始PHP 3的开放测试,最后在1998年6月正式发布PHP 3。Zeev Suraski和Andi Gutmans在PHP 3发布后开始改写PHP的核心,这个在1999年发布的语法分析器称为Zend Engine[8],他们也在以色列的Ramat Gan成立了Zend Technologies来管理PHP的开发。[6]
在2000年5月22日,以Zend Engine 1.0为基础的PHP 4正式发布,2004年7月13日则发布了PHP 5,PHP 5则使用了第二代的Zend Engine[6]。PHP包含了许多新特色,像是强化的面向对象功能、引入PDO(PHP Data Objects,一个访问数据库的延伸库)、以及许多性能上的增强[9]。当前PHP 4已经不会继续更新,以鼓励用户转移到PHP 5。[10][11]
2008年时,PHP 5成为了PHP唯一维护中的稳定版本。
PHP 7的首个版本于2015年12月3日开发完成,包含了大量性能上的改进,同时也带来了一些新特性,最值得注意的是返回值类型声明、标量类型声明(可用于参数及返回值)。
来源:维基百科-PHP
二、PHP能做什么?
A.命令行脚本;
B.服务器脚本(最主要的功能);
C.桌面应用程序;
三、PHP的工作原理
A.客户端向服务器发送HTTP请求;
B.服务器接收请求后,将请求转发给PHP解析器;
C.PHP解析器接受并处理请求;
D.PHP解析器将处理结果返回给服务器;
E.服务器再将结果返回给客户端;
四、PHP环境的搭建
1、Apache的安装与配置
apache (Web服务器)
Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中。同时Apache音译为阿帕奇,是北美印第安人的一个部落,叫阿帕奇族,在美国的西南部。也是一个基金会的名称、一种武装直升机等等。
Apache是可以跨平台运行的、最受欢迎的服务器软件;
Apache的安装与配置步骤:
-
解压压缩包到c:\apache24目录;
-
在windows命令行中切换到Apache安装目录下的bin目录内;
切换到命令行: 开始->运行->cmd
命令是: cd c:\apache24\bin
-
输入 httpd -k install
-
启动Apache ;
- 启动浏览器,并输入 http://127.0.0.1
卸载Apache: 在命令行输入 sc delete apache
2、PHP的安装与配置
-
下载PHP
选择相应版本的PHP进行下载;Apache服务器应选择线程安全(TS)的PHP版本进行下载;
下载地址:https://windows.php.net/download/ -
解压压缩包到相应的位置(可以和Apache放在一起);
-
将PHP安装目录下的php.ini-production(生产环境下的配置文件,这只是示例文件并不起作用,将其重命名为php.ini 后才起作用),并重命名为php.ini
3、将PHP绑定到Apache
-
编辑Apache配置文件 –
httpd.conf
(位于Apache安装目录下的conf目录内); -
在文件的空白处添加:
#加载模块
LoadModule php7_module "php7apache2_4.dll文件的位置"
#PHP配置文件的位置
PHPIniDir "PHP配置文件的目录"
#告诉PHP引擎,哪些类型的文件将交给PHP引擎来处理
AddType application/x-httpd-php .php
4、 Apache的基本配置(httpd.conf
)
配置项 | 说明 |
---|---|
ServerRoot | 用于指定Apache服务器运行的根目录,此目录不能改。Apache服务器开启之后,会在这个目录下工作。 |
MaxClients | 指定同时能访问服务器的客户机数量。 |
DocumentRoot | 服务器共享文件的起始位置,即默认网站的根目录。默认网站的根目录为: DocumentRoot “/var/www/html”。将网站上传到到网站根目录下,网站的内容就都访问到了。 |
DirectoryIndex | 默认网站主页 |
AddDefaultCharset | UTF-8 默认编码方式 |
Listen | 服务器监听的端口,默认80端口。 |
ServerAdmin | 设置管理员的信箱。当服务器出现问题时,在客户机出错信息上会显示管理员的信箱,这时客户机就会利用此信箱地址给管理员发邮件,告知管理员维护。 |
更多配置:Apache服务器的基本配置