PHP(一)——概述及服务器配置

PHP概述

PHP定义

PHP是Hypertext Preprocessor(超文本预处理器)的缩写,是服务器端的、跨平台的、HTML嵌入式的脚本语言,尤其适合Web开发。

优势

PHP是一种很有前景的Web语言,其具有以下优势:

  • 开放源代码。
  • 易于学习。
  • 数据库连接。
  • 面向对象编程。
  • 可扩展性。

发展历史

  • 1994年,PHP最初由Rasmus Lerdorf发起,之后以Personal Home Page Tools (PHP Tools)对外发布第一个版本,在早期版本,提供了访客留言、访客计数器等简答功能。
  • 1995年,PHP第二个版本问世,定名为PHP/FI(From Interpret),是一个专为个人主页/表单提供解释程序的程序,它有着Perl样式变量,能自动解释表单变量,加入了对MySQL的支持,并可以嵌入到HTML中,已经包含了今天PHP的一些基本功能。
  • 1998年6月,正式发布PHP第三版本,命名为PHP3,它类似于当今的PHP语法结构的第一个版本,它最强大的功能是其扩展性,能够给最终用户提供数据库、协议和API等基础结构。Zeev Suraski 和 Andi Gutmans 在 PHP 3 发布后开始改写PHP 的核心,这个在1999年发布的剖析器称为 Zend Engine,他们也在以色列的 Ramat Gan 成立了 Zend Technologies 来管理 PHP 的开发。
  • 2000年5月,PHP4.0正式版本发布。PHP4.0除了更高的性能之后,还包含了其他一些功能,比如:支持更多的Web服务器,输出缓存,更安全的处理用户输出的方法等。
  • 2004年7月,PHP5问世。PHP5是里程碑式的版本,采用ZendII引擎,完备对象模型,改进了语法设计,最终使得PHP成为设计完备、具有面向对象能力的脚本语言。
  • 2015年6月,PHP7第一版的alpha版本正式公开发布。PHP7是PHP编程语言的一个主要版本,并号称是开发Web应用程序的一次革命,可开发和交付移动企业和云应用。此版本被认为是PHP在2004年发布PHP5后最重要的变化。到2017年已经到了PHP7.1的版本。其中PHP7使用新的 Zend Engine 3.0 提高应用程序性能两倍,比PHP5.6 低了 50% 的内存消耗。 它可以服务于更多的并发用户,无需任何额外的硬件。考虑到当今的工作量 PHP7设计并重构。

PHP、ASP和JSP对比

PHP、ASP和JSP是三种常用的网络开发语言,他们之间有着各自的特点。

ASP、PHP和JSP的共同点:

  • 都能嵌入到HTML代码中;
  • 都是面向Web服务器的技术,客户端浏览器不需要任何附加的软件支持;
  • HTML代码主要负责信息的显示样式,而程序代码则是描述处理逻辑。

ASP、PHP和JSP的对比:

特性PHPASPJSP
提出方Rasmus Lerdorf微软Sun公司
相似的语言perlVisual BasicJava
代码解析方式语言引擎解释执行语言引擎解释执行被编译成Servlet并由Java虚拟机执行
操作系统均可Win32均可
Web服务器多种IIS多种
执行效率极快
稳定性中等
学习门槛
函数支持较多
系统安全
升级速度中等
网页结合
开发时间较长

注意:JSP代码解析时,编译操作仅在JSP页面的第一次请求时发生。

常用开发工具

  • PHP代码开发工具(具有调试功能)
    • Zend studio
    • PHP Edit
  • 网页设计工具
    • Frontpage
    • Dreamweaver
  • 文本编辑器
    • UItraEdit
    • EditPlus
    • sublime text
    • Windows自带记事本

服务器配置

准备

想要配置一台支持PHP语言的Web服务器,需要从硬件和软件两方面进行需求分析。

选择硬件

配置一台Web服务器,从硬件角度可分为两条路线:

  • 专业级。从构建一台真正的Web服务器出发,按服务器标准卑职专业级硬件。也就是说需要支持24小时/365天的服器级CPU、主板和散热机箱,以及RAID的冗余备份系统,软件和硬件防火墙,标准空调托管环境等标配。
  • 业余调试级。以目前主流的个人电脑配置就可以满足其硬件要求,即至少256MB内存,奔腾级CPU、10Mb/s网卡。

选择操作系统

要配置Web服务器,确定硬件需求后,还需要选取操作系统:

  • Windows,需要硬件平台上装有Windows操作系统,这就意味着花费一笔钱想Microsoft购买该软件、
  • Linux,开源免费的。

    综合上述比较,一般选用Linux作为服务器的操作系统。

选择服务器软件

IIS是Windows XP 系统自带的服务器,但是该服务器只支持ASP语言,对于PHP是不能解析的,需要另外配置才可以。由于IIS不是支持PHP语言的主流,其对于PHP支持的高级功能是大打折扣的。

目前有很多HHTP Server软件可供使用,目前最流行的是Nginx与Apache。

  • Apache具有足够灵活、广泛支持、能力强化、以模块方式集成大多数语言(如PHP)的优点。因为Apache是在进程内部解析大多数脚本语言的,所以没有软件间通信的开销。

    由于每个请求都会由一个进程或者线程处理,所有Apache在处理请求时开销很大。当它应用于高并发场景时,其性能低下的问题就凸显出来了。

  • Nginx提供的异步、事件驱动、非阻塞请求处理。Nginx不必等待每个请求完成,避免了锁住资源。Nginx创建许多工作进程,每个工作进程可以处理数千个链接,因此可以使用很少的进程来承载高并发流量

    Nginx没有内置任何解释性语言,这样Nginx就可以专注处理请求的接收和响应,而具体的解析脚本语言的进程则在Nginx之外。

通常认为Nginx快于Apache,但是在如静态资源(图片、css、js等文件)场景下,Apache有自己的优势。在构建高性能服务器时,Apache并不是问题所在PHP才是真正的瓶颈。

在实际的项目开发中,Apache是使用最广泛的服务器软件。

Apache安装

官方下载地址:http://httpd.apache.org/download.cgi
。关于在不同平台上的安装可以百度获知。

Apache配置:网站能够解析静态网页之后,所有的程序必须放在Apache的htdocs文件夹下才能被解析,如果用户想自己建立网站根目录,则需要对Apache的http.conf文件进行如下配置,具体步骤为:

  • 查找DocumentRoot,下面有这样一行DocumentRoot"C:/Program Files/Apache Group/Apache2/htdocs",这就是网站默认的根目录,可以修改为希望设置的目录。
  • 查找“This should changed whatever you set DocumentRoot to”,在其下面有这样一行:<Directory "C/Program Files/Apache Group/Apache2/htdocs">,将C/Program Files/Apache Group/Apache2/htdocs改成要设置的目录,如C:\Web。

PHP安装

官方下载地址:http://php.net/downloads.php
。关于在不同平台上的安装可以百度获知。

PHP配置:对于不同的环境,需根据具体需要进行配置。

MySQL安装

官方下载地址:https://dev.mysql.com/downloads/mysql/

根据不同的需求下载MySQL对应的版本,之后按网上相关教程安装即可。

对于MySQL数据操作,除了命令行之后,还可以通过图形化操作软件进行操作,如phpMyAdmin、SQLyog和Navicat等。可参考:五种常用的MySQL图形化管理工具介绍使用

PHP开源框架

  • Laravel(较重要)是一个现代化的PHP开发框架,代码优雅,使用 composer 方式扩展功能,社区活跃,缺点是比较重,比较适合做后台管理或者应用型WEB系统。

  • Zend Framework(较重要):是完全基于PHP5的开源PHP开发框架,可用于开发Web程序和服务。

  • ThinkPHP(较重要)国内使用比较多,优点是文档非常多,各种问题解决方案比较多,缺点是代码不够规范,理念落后。

  • Pop PHP:一种强壮的框架,而且易于使用的WEB应用开发语言,在PHP框架中排名前十。它提供了一系列可管理的学习曲线,同时又提供了健壮和强大的功能。

  • Kohana是一款基于MVC模式开发的纯PHP5的框架。 它的特点就是高安全性,轻量级代码,容易使用。

  • PHPixie是一个性能卓越并且功能丰富的轻量级PHP框架。 PHPixie能使web开发更简单、更快速。

  • Medoo是一款超轻量级的PHP、SQL数据库开发框架,可提升开发Web应用的效率与性能。

  • Flight是一个快速、简单、可扩展的微型PHP框架。

  • Phalcon是高性能PHP应用程序框架。它执行速度快,消耗资源少。根据官方测试,Phalcon是目前世界上速度最快的PHP框架。

  • Yii是一个基于组件、用于开发大型 Web 应用的高性能PHP框架,是目前最有效率的PHP框架之一。通过一个简单的命令行工具它可以快速创建一个web应用程序的代码框架,开发者可以在生成的代码框架基础上添加业务逻辑,以快速完成应用程序的开发。

  • Webasyst是一个PHP框架,用来创建时尚多用户的 web 应用和网站。

  • Symfony是一个完整的框架结构,可用来帮助并加速网络应用的开发。

  • CodeIgniter是一套给PHP网站开发者使用的应用程序开发框架和工具包。 它为组织提供了足够的自由支持,允许开发人员更迅速地工作。

  • CI非常轻量级,是一个简单的MVC框架,性能也很快。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

flybirding10011

谢谢支持啊999

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值