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框架,性能也很快。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/242355.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PHP(二)——HTML基础

HTML简介HTNL是超文本标记语言 (Hyper Text Markup Language)&#xff0c;是一种文本标记语言&#xff0c;不需要编译&#xff0c;可以直接被浏览器执行&#xff08;属于浏览器解释型语言&#xff09;。 HTML语法HTML是一种标记语言&#xff0c;组成HTML语法的元素有HTML标签和…

microsoft已过期

microsoft已过期 第一步&#xff1a;点击红色剪头&#xff0c;选择设置 第二步&#xff1a;点击&#xff1a;关于microsoft edge&#xff1b;等待更新&#xff0c;重启就行。

PHP(三)——PHP基础知识

PHP基础语法PHP在HTML中的嵌入&#xff0c;允许四种类型 <?php 和 ?>&#xff0c;只要支持PHP语言的服务器。<? 和 ?>&#xff0c;需将php.ini文件中的short_open_tag的值设为on。<script language "php"> 和 </script><% 和 %>&a…

计算机启动流程

引言“启动”英文是boot&#xff0c;其本意是靴子的意思&#xff0c;这里boot是bootstrap&#xff08;鞋带&#xff09;的缩写&#xff0c;来自谚语"pull oneself up by ones bootstraps"&#xff0c;译为“拽着鞋带把自己拉起来”。 最早的时候&#xff0c;工程师们…

Mathtype

Mathtype Mathtype安装后的激活 桌面右键新建文本文档,复制代码进去,把后缀修改为reg(这里文件名直接规范写成mathtype.reg)。 关闭程序后双击reg文件。(若选择自行复制,文件代码在评论区,自行复制,另存为reg文件。点击确认添加到注册表) Windows Registry Editor …

为什么银行没有厕所?内急了怎么办!

说到银行没有设厕所&#xff0c;估计大家都在吐槽&#xff0c;有时候在银行排队一两个小时&#xff0c;内急了都没地方解决&#xff0c;以前还听说有一个老太太求银行开放厕所不行&#xff0c;结果拉在裤子上的新闻&#xff0c;最近我又看到有一个网友说他去银行实在太内急&…

GPIO模块寄存器的封装

GPIO模块寄存器的封装 1、结构体的基础知识 2、GPIO的寄存器排列 三、GPIO寄存器的封装 四、GPIO的端口定义 例子如下&#xff1a; GPIOH_OTYPER相对GPIOH_MODER 偏移4字节&#xff0c;GPIOH_OSPEEDR相对GPIOH_OTYPER偏移4字节等寄存器。 typedef unsigned int unint32_t;/…

每月1000元存入余额宝或银行,十年后会有多少?

首先我们来看下存入余额宝的收益余额宝属于货币基金&#xff0c; 没有固定的收益&#xff0c;不能保证你旱涝保收。我们来看下余额宝成立至今的收益率分布&#xff1a;从这个两个表当中&#xff0c;我们可以看出&#xff0c;余额宝收益最高是2013年12月到2014年2月这段时间&…

为何很多理财平台扣钱很快,但是提现的时候却很慢?

举个简单的例子&#xff0c;当一个人很饿的时候你给他一块面包&#xff0c;你说他积极不积极&#xff1f;但是当他刚吃到一半还没吃饱&#xff0c;你却提前要把面包收回去&#xff0c;你说人家能积极吗&#xff1f;当然这只是个例子&#xff0c;实际上往理财平台转钱很快&#…

如是院长说:买不起房就多买两套,大家怎么看

4月11日在博鳌亚洲论坛下午开展的分论坛“楼市&#xff1a;这次真的不一样”中&#xff0c;如是金融研究院院长、首席经济学家管清友劝大家&#xff1a;买不起房你就多买两套&#xff01;不然以后你更加买不起。借钱也得买啊&#xff01;对此大家怎么看呢&#xff1f;对于这个观…

发生地震等灾难,死难者的存款会怎么处理?

最近有网友提出了一个疑问&#xff0c;人在灾难中死亡后&#xff0c;存在银行的钱会不会被银行私吞呢&#xff1f;毕竟死无对证嘛&#xff01;其实对于人死亡后的存款处理问题&#xff0c;根据我国《商业银行法》和《关于查询、停止支付和没收个人在银行的存款以及存款人死亡后…

DSP开发环境及工具之CCS

DSP开发环境及工具之CCS CCS( Code Composer Studio)是美国德州仪器(TI)公司的嵌入式处理器的开发环境,可以用于TI公司的各个系列处理器的软件开发和调试,如DSP,MCU,ARM等。 主要的操作都是在这个窗口之间做相应的切换。 创建工程文件 或者

许家印帮贾跃亭广州拿地造车,这是要翻身的节奏吗?

4月8日&#xff0c;被指为贾跃亭关联公司的睿驰智能汽车&#xff08;广州&#xff09;有限公司&#xff0c;以3.64亿元底价拍下广州南沙区保税港区一宗逾600亩制造业用地。很多人都猜测这是贾跃亭卷土重来的迹象。而在贾跃亭拿地的背后&#xff0c;有很多人猜测是许家印在背后帮…

1000万存在银行,一年的利息够日常生活费吗?

1000万存一年的利息对于大部分人来说绝对是够生活的&#xff0c;但是对于王思聪来说估计零花钱都不够&#xff01;我们先来看下&#xff0c;1000万存银行一年的利息有多少活期存款&#xff1a;活期利息目前是0.3%&#xff0c;那1000万一年的利息就是3万块钱&#xff0c;这个够一…

CMD内存定位文件-1

CMD内存定位文件 TI的DSP应用程序&#xff0c;是一段固定地址运行的代码。也就是说&#xff0c;在编译和连接完成后&#xff0c;其代码的运行地址也就固定下来了。PC上的应用程序&#xff08;.exe格式&#xff09;有很大差别。.exe文件在装入时&#xff0c;由操作系统为其分配…

央行降准,房价可能又要骚动了!

4月17日傍晚&#xff0c;央行发布公告&#xff0c;将从2018年4月25日起&#xff0c;下调大型商业银行、股份制商业银行、城市商业银行、非县域农村商业银行、外资银行人民币存款准备金率1个百分点&#xff1b;同日&#xff0c;上述银行将各自按照“先借先还”的顺序&#xff0c…

keras的学习笔记

简介Keras是一个高层神经网络API&#xff0c;Keras由纯Python编写而成并基于Tensorflow、Theano和CNTK后端。Keras 支持快速实验&#xff0c;能够把你的idea迅速转换为结果&#xff0c;适用场景&#xff1a; 简易和快速的原型设计&#xff08;keras具有高度模块化&#xff0c;极…

他们曾是别人眼中的笑话,最后却都成了神话

有一个瘦小的小伙去肯德基应聘&#xff0c;他落选了。后来他跟大老板们讲了讲什么叫电子商务&#xff0c;大老板们得出一个结论&#xff0c;这是个骗子&#xff0c;后来他创造了阿里巴巴商业帝国&#xff0c;这个人叫马云。有人对一个年轻人说&#xff0c;你这么丑&#xff0c;…

房贷已经审批通过,放款的时候银行却要求涨利率,是否合法?

近日有个网友说他自己在1月份申请的房贷&#xff0c;2月份的时候银行按揭贷款已经审批通过&#xff0c;但是在4月份放款的时候&#xff0c;银行却突然要求上浮10%的利率&#xff0c;否则就得继续等。对于这个问题&#xff0c;相信不少网友都曾经遇到过&#xff0c;那银行这种临…

PHP设计模式

引言PHP介绍PHP是用C语言开发出来的一种语言&#xff0c;C语言是真正意义上跨平台的语言&#xff0c;这也注定PHP是跨平台的&#xff0c;PHP是可运行在Windows Server或Linux操作系统的服务器上的语言&#xff0c;它和Java以及C#一样&#xff0c;代码存储并运行在服务器端&…