一、什么是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

官网:http://www.php.net

二、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的安装与配置步骤:

  1. 下载Apache https://www.apachelounge.com/download/

  2. 解压压缩包到c:\apache24目录;

  3. 在windows命令行中切换到Apache安装目录下的bin目录内;

    切换到命令行: 开始->运行->cmd

    命令是: cd c:\apache24\bin

  4. 输入 httpd -k install

  5. 启动Apache ;

  1. 启动浏览器,并输入 http://127.0.0.1

卸载Apache: 在命令行输入 sc delete apache

2、PHP的安装与配置

  1. 下载PHP
    选择相应版本的PHP进行下载;Apache服务器应选择线程安全(TS)的PHP版本进行下载;
    下载地址:https://windows.php.net/download/

  2. 解压压缩包到相应的位置(可以和Apache放在一起);

  3. 将PHP安装目录下的php.ini-production(生产环境下的配置文件,这只是示例文件并不起作用,将其重命名为php.ini 后才起作用),并重命名为php.ini

3、将PHP绑定到Apache

  1. 编辑Apache配置文件 – httpd.conf(位于Apache安装目录下的conf目录内);

  2. 在文件的空白处添加:

#加载模块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服务器的基本配置

PHP基础和环境搭建(一)相关推荐

  1. 轩小陌的Python笔记:day01 计算机基础和环境搭建

    day01 计算机基础和环境搭建 课程目标:了解计算机的基础知识并完成python的环境搭建 课程概要: 计算机基础 编程的本质 Python的介绍 Python环境的搭建 1.计算机基础 1.1基本 ...

  2. Redis之Redis基础、环境搭建、主从切换

    Redis基础.环境搭建.主从切换 一.Redis简介 1.引入NoSQL的背景 2.Redis简介 二.环境部署 1.server1源码安装redis,并创建redis实例 2.server2主机, ...

  3. Java从入门到实战总结-1.1、Java基础之环境搭建和eclipse安装

    Java从入门到实战总结-1.1.Java基础之环境搭建和eclipse安装 文章目录 Java从入门到实战总结-1.1.Java基础之环境搭建和eclipse安装 1.Hello Java 1.1. ...

  4. Pytorch深度学习实战教程(一):语义分割基础与环境搭建

    Pytorch的基本使用&&语义分割算法讲解 先从最简单的语义分割基础与开发环境搭建开始讲解. 二.语义分割 语义分割是什么? 语义分割(semantic segmentation) ...

  5. 1 计算机基础和环境搭建

    二刷路飞学院的Python全栈开发 此课程是在2018年购买的,并在2019年下半年,学完了8章内容,并且让我成功跳槽找到了更好的工作,虽然现在已经又换了一家工作.但是,这个课程是让我全面的学习了Py ...

  6. day01 计算机基础和环境搭建

    day01 计算机基础和环境搭建 课程目标:让大家了解计算机基础知识并完成python的环境搭建 课程概要: 计算机基础 编程的本质 python的介绍 python环境的搭建 1.计算机基础 1.1 ...

  7. Spark学习之路一——Spark基础及环境搭建

    Spark学习之路一--Spark基础及环境搭建 文章目录 一. Spark 概述 1.1 概述 1.2 优势特性 1.2.1 运行速度快 1.2.2 容易使用 1.2.3 通用性 1.2.4 运行模 ...

  8. Pytorch深度学习实战教程:语义分割基础与环境搭建

    一.前言 许久没有更新技术博文了,给自己挖一个新坑:语义分割系列文章. 该系列文章的内容有: Pytorch的基本使用 语义分割算法讲解 先从最简单的语义分割基础与开发环境搭建开始讲解. 二.语义分割 ...

  9. 《高效玩转 vscode》- 1:基础编程环境搭建

    vscode 基础编程环境搭建 一.配置C/C++环境 1.下载minGW 2.下载vscode 3.配置clang-format 默认配置 自定义配置 注意 我的 .clang-format 配置 ...

  10. Python零基础入门01【计算机基础和环境搭建】

    01–计算机基础和环境搭建 目标:了解计算机基础知识并完成Python的环境搭建 概要: 计算机基础 编程的本质 Python的介绍 Python环境搭建 1.计算机基础 1.1基本概念 计算机的组成 ...

最新文章

  1. Ubuntu10.10更新源
  2. 事件标志组解决任务间资源共享问题
  3. flink 自定义 窗口_《从0到1学习Flink》—— Flink Data transformation(转换)
  4. boost::fibers模块实现适应非阻塞的测试程序
  5. .NET MD5加密解密代码
  6. 不要错过这轮疫情的“洗牌”机会
  7. python模块:运行机制与编写方法
  8. Django中static media的简单配置及图片上传实践
  9. java定义int函数_Java自定义函数的四种类型
  10. python 帮助 autocad_python 使用pyautocad操作AutoCAD
  11. 结对编程-四则运算生成
  12. 独具匠心的好书:评《构建高性能Web站点》
  13. 花了很长时间看完了 java编程思想
  14. 动态域名解析NAT版结合绿盾加密解密软件使用方法
  15. 忘记steam账号了,如何查找本地steam账号?
  16. 利用草地湿润模型学习机器学习之参数估计
  17. 机器学习(二)-朴素的贝叶斯分类
  18. Android无线蓝牙开发总结
  19. Navicat迁移表数据 一
  20. 自动打开html网页脚本,开启网页全屏插件(自动开启网页全屏脚本js插件)

热门文章

  1. 天创速盈电商:拼多多运营技巧有哪些?注意事项有哪些?
  2. java setdate_java中setDate(Date date)方法和String与Date之间的转换
  3. OpenStack-基本概念之neutron
  4. sendfile | 传说中的零拷贝(主要用于网络中文件传输)
  5. 1. RxJava概述
  6. PDMReader2.0发布
  7. Bugku Crpyto writeup --道友不来算一算凶吉?
  8. 程序名称:麦弗逊悬架硬点布置 根据设计输入,布置麦弗逊悬架硬点坐标,匹配转向拉杆断开点,匹配车轮外倾角和前束值
  9. 怎样提高公司产品的知名度?
  10. nginx定时封ip防爬虫