PHP概述


了解PHP的历史,安装Apache和PHP.

一、什么是PHP

PHP(Hypertext Preprocessor,超文本预处理器)是运行在服务器端的一种通用开源脚本语言。在学习PHP之前需要对HTML、CSS、和JavaScript有一定的了解,因为php文件可包含文本、HTML、CSS、JavaScript代码和PHP代码,PHP文件的后缀名默认为“.php”。
更多相关介绍:百度百科-PHP:https://baike.baidu.com/item/PHP/9337?fr=aladdin

二、PHP的历史

1995年初,PHP1.0诞生
Rasmus Lerdof发明了PHP,这是简单的一套Perl脚本,用来跟踪访问者的信息。这个时候的PHP只是一个小工具而已,它的名字叫做“Personal Home Page Tool”(个人主页小工具)。

1995年6月,PHP2.0诞生
Rasmus Lerdof用C语言来重新开发这个工具,取代了最初的Perl程序。这个新的用C写的工具最大的特色就是可以访问数据库,可以让用户简单地开发动态Web程序了。这个用C写的工具又称为PHP/FI。它已经有了今天php的一些基本功能了。

1998年6月,PHP3.0诞生
虽然说98年6月才正式发布php3.0,但是在正式发布之前,已经经过了9个月的公开测试了。Andi Gutmans和Zeev Suraski加入了PHP开发项目组。这是两个以色列工程师,他们在使用PHP/FI的时候发现了PHP的一些缺点,然后决定重写PHP的解析器。注意,在这个时候,PHP就不再称为Personal Home Page了。而改称为PHP:Hypertext Preprocessor。

2000年5月,PHP4.0发布
Andi Gutmans和Zeev Suranski在4.0做的最大的动作就是重写了PHP的代码,发明了Zend引擎来增强程序运行时的性能和PHP的模块性。这个Zend实际上就是Andi和Zeev名字缩写的合称。使用了Zend引擎,PHP获得了更高的性能之外,也有其他一些关键的功能,包括支持更多的web服务器;HTTP Session的支持;输出缓冲等。

2004年7月,PHP5.0发布
PHP5.0的核心是Zend引擎2代。它引入了新的对象模型和大量的新功能。比如引入了PDO(PHP Data Object)。

2015年,PHP7.0发布
2015年6月11日,PHP官网发布消息,正式公开发布PHP7第一版的alpha版本。PHP7 是 PHP 编程语言全新的一个版本,主要在性能方面获得了极大的提升。官方的文档显示,PHP7 可以达到 PHP5.x 版本两倍的性能。同时还对 PHP 的语法做了梳理,提供了很多其他语言流行的语法格式。难能可贵的是,做了如此大的改动,PHP7 的兼容性还是非常好的。对于绝大多数的应用来讲, 可以不用做修改即可迁移到 PHP7 版本。
现在通常使用的PHP版本是PHP5.0+和PHP7.0+。

三、PHP 的优势

  • 简单易学,它的语法混合了C语言、Java语言和Perl语言的特点。
  • 开源,开源代码具有更强的可靠性和安全性。
  • 跨平台,PHP可以支持所有的服务器操作系统,例如:Windows、Linux。
  • 面向对象,具有所有面向对象的特点。
  • PHP可以同时使用多个数据库,其中和MySQL的搭配最佳。
  • 速度快,PHP是一种强大的CGI脚本语言,其执行网页的速度比Perl、ASP等速度更快,占用系统资源更少。

四、PHP的用途

  • PHP可以生成动态页面内容
  • PHP可以创建、打开、读取、写入、关闭服务器上的文件。
  • PHP可以收集表单数据。
  • PHP可以发送和接收Cookies。
  • PHP可以添加、删除、修改数据库中的数据。
  • PHP可以限制用户访问网站上的一些页面。
  • PHP可以加密数据。
  • 使用PHP可以不再受限于输出HTML,还可以输出文本、图像、PDF文件,伸着Flash影片。

五、PHP的环境搭建

(1)WAMPSERVER

对于PHP初学者来说,通常会选择使用WAMP环境来配置服务器环境。

WampServer是一款由法国人开发的Apache Web服务器、PHP解释器以及MySQL数据库的整合软件包。免去了开发人员将时间花费在繁琐的配置环境过程,从而腾出更多精力去做开发。WampServer就是Windows Apache Mysql PHP集成安装环境,即在window下的apache、php和mysql的服务器软件。

WAMPSERVER官网:http://www.wampserver.com/

WAMPSERVER的安装与配置

(2)Apache的配置与安装

Apache官网: http://www.apache.org/

XAMPP: https://www.apachefriends.org/index.html

XAMPP的安装与配置

由于在2015年以后,官方不再提供Apache-http-server的Windows编译版本,因此如果我们需要下载Windows编译版本,则需要从第三方下载,如ApacheHaus,Apache Lounge,BitNami WAMP Stack,WampServer和XAMPP。同时,我们可以从任意第三方选择要下载的编译包。

六、PHP常用的代码编辑工具

PHP的开发工具有很多,并且每一种开发工具都有自己的优势,一款适合自己的开发工具,可以使PHP开发变得更加轻松和高效。

1.https://notedpad-plus-plus.org/
Notedpad++是一款文本编辑器,软件小巧高效,支持多种编程语言,如C、C++、Java、C#、XML、HTML、PHP、JavaScript等。

2.https://code.visualstudio.com/
Visual Studio Code 是编写现代 Web和云应用的跨平台源代码编辑器。

3.https://sublimetext.com/
Sublime Text 是一个轻量级的编辑器,也支持各种编程语言。

4.https://atom.io/
Atom 是 GitHub 专门为程序员推出的一个跨平台文本编辑器。

5.http://www.dcloud.io/
HBulider 是一款国产的前端开发工具。

6.http://www.eclipse.org/
Eclipse 是一款支持各种语言开发的集成环境,为程序开发提供了很多强大的功能,是一款老牌的开发工具。

7.http://www.zend.com/
Zend Studio 是目前公认的最强大的 PHP 开发工具,具备十分专业的编辑功能,调试工具等,目前 Zend Studio 是一款收费软件,提供免费的试用版。

Authors
杜小白

PHP技术与应用基础相关推荐

  1. Linux技术研究-基础篇(raid与LVM,配额)

    Linux技术研究-基础篇(raid与LVM,配额) 创建RAID-5 若想建立新的md1设备 只在/dev下建立还不够 重启后会消失 固化的方法是 为了使udev自动产生/dev/md1, /dev ...

  2. 计算机应用基础试题事业单位,机关事业单位技术工人计算机应用基础知识复习题...

    机关事业单位技术工人计算机应用基础知识复习题 工人技师 计算机考试试题库 公共部分 5.在 Windows 中,文件名的最大长度为___256 个西文或者 128 个汉字________. 6.制作网 ...

  3. CV:计算机视觉技术之图像基础知识(二)—图像内核的可视化解释

    CV:计算机视觉技术之图像基础知识(二)-图像内核的可视化解释 目录 图像内核的可视化解释 测试九种卷积核 官方Demo DIY图片测试 DIY实时视频测试 相关文章 CV:计算机视觉技术之图像基础知 ...

  4. CV:计算机视觉技术之图像基础知识(二)—以python的skimage和numpy库来了解计算机视觉图像基础(图像存储原理-模糊核-锐化核-边缘检测核,进阶卷积神经网络(CNN)的必备基础)

    CV:计算机视觉技术之图像基础知识(二)-以python的skimage和numpy库来了解计算机视觉图像基础(图像存储原理-模糊核-锐化核-边缘检测核,进阶卷积神经网络(CNN)的必备基础) 目录 ...

  5. CV:计算机视觉技术之图像基础知识—以python的cv2库来了解计算机视觉图像基础

    CV:计算机视觉技术之图像基础知识-以python的cv2库来了解计算机视觉图像基础 目录 一.图像中的傅里叶变换 1.时域和频域 2.傅里叶变换 3.图像中的傅里叶变换

  6. CV:计算机视觉技术之图像基础知识(一)—以python的cv2库来了解计算机视觉图像基础(傅里叶变换-频域-时域/各种滤波器-线性-非线性-均值-中值-高斯-双边)

    CV:计算机视觉技术之图像基础知识(一)-以python的cv2库来了解计算机视觉图像基础(傅里叶变换-频域-时域/各种滤波器-线性-非线性-均值-中值-高斯-双边) 目录 一.图像中的傅里叶变换 1 ...

  7. Linux技术研究-基础篇(启动和自动挂载)

    Linux技术研究-基础篇(启动和自动挂载) 系统启动流程 如果有一天你的服务器启动不了,面对屏幕上的各种各样的提示素手无策. 你不知道服务器出了什么问题,无法判断启动到了哪个环节. 若想排查出问题原 ...

  8. ps_基础技术提升topic基础知识调研

    基础技术提升topic基础知识调研结果 基础技术提升topic基础知识调研结果分类 大类 小类 调研提出的问题 C类 编译与调试 如何追core?对gdb的了解还是太浅,应用中有很多问题. 怎么在没有 ...

  9. Web前端系列技术之HTML基础(从入门开始)①

    Web前端系列技术之HTML基础(从入门开始)① 从这里开始,我便开始记录每天重新学习巩固HTML语言的过程,这不仅仅是为了提高自己的熟练度,更是为了让自己的博客一步一步的见证我走向前端全栈工程师这条 ...

  10. 一头扎进httpclient企业跨域技术从零基础到大神实战案例

    一头扎进httpclient企业跨域技术从零基础到大神实战案例 一头扎进httpclient企业跨域技术从零基础到大神实战案例 一头扎进httpclient企业跨域技术从零基础到大神实战案例 下载地址 ...

最新文章

  1. Flex 布局详解 - 转自阮一峰老师
  2. BZOJ2437 [Noi2011]兔兔与蛋蛋 【博弈论 + 二分图匹配】
  3. 两列布局左边定宽,右边自适应
  4. xtrabackup mysql 5.6_MySQL 5.6对于Xtrabackup的影响
  5. XmlSerializer 对象的Xml序列化和反序列化,XMLROOT别名设置
  6. iOS 去除警告 看我就够了
  7. 【R】语言第二课----- 变量的使用方法
  8. python字符串最大长度_字符串String的最大长度
  9. C++ 最大堆最小堆与push_heap pop_heap
  10. java避免活锁.死锁的解决,java并发编程(九): 避免活跃性危险
  11. python自带数据库是什么意思_原来Python自带了数据库,用起来真方便!
  12. 甘特图 知乎_哪一款甘特图软件最好用?
  13. Android studio成品源码项目计步器锻炼跑步步数,该计步器实现了实时计步,设定计划提醒
  14. 通过Docker安装L2TP
  15. vue中引入高德地图并多点标注
  16. 微商如何通过自媒体平台进行引流
  17. 什么是Hadoop的HA机制?
  18. python去除图片多余的白色边框
  19. 什么是三层交换机?二层交换与三层交换和路由有什么区别?
  20. java 实现99乘法表

热门文章

  1. 说说Mac上的截图快捷键
  2. uni的numberbox怎么用_模拟器最强BIOS篇,如何使用uni-bios
  3. simkai.ttf 中文楷体文件
  4. Unity(13)-场景切换,保留资源
  5. 【Python】摄氏度与华氏度互相转化
  6. Majoy实地体验和冰糖樱桃酱等3个食谱
  7. Window10 打开ftp服务
  8. python selenium unittest_使用python学习selenium2--使用unittest进行测试
  9. 幼儿抽象逻辑思维举例_熊孩子到底在想什么—幼儿思维干货速记!
  10. openssl自签名ca证书,以及签发服务端/客户端证书