1.php诞生于哪年?
2.lampLAMP安装
3.Apache is 下载running a threaded MPM,but your PHP Modle is not compiled to be t
php诞生于哪年?
php是什么?
PHP(PHP:HypertextPrerocessor)是一种在电脑上执行的脚本语言,主要是源p源用途在于处理动态网页,也包含了命令行执行接口(commandlineinterface),码包码下或者产生图形使用者接口(GUI)程序。下载[1]
PHP最早由RasmusLerdorf在年发明,源p源现在PHP实质上的码包码下调研指标源码标准由PHPGroup和开放源代码社群维护。PHP以PHPLicense作为许可协议,下载不过因为这个协议限制了PHP名称的源p源使用,所以和开放源代码许可协议GPL不相容。码包码下[2]
PHP目前被广泛的下载应用,特别是源p源在服务器端的网页程序开发。一般来说PHP大多执行在网页服务器上,码包码下透过执行PHP程序码来产生使用者浏览的下载网页。PHP几乎可以在任何的源p源操作系统上执行,而且使用PHP完全是码包码下免费的。根据年4月的统计资料,PHP已经被安装在超过万个网站和万台服务器上[3]。
目录[隐藏]
1开发历史
1.1版本历程
2应用
3语法
3.1类型
3.2变量
3.3面向对象
4PHP相关资源
4.1函数库
4.2源代码编码和加速
4.3样板引擎
5未来发展
5.1PHP5.3
6参考资料
7外部链接
[编辑]开发历史
PHP的发明人RasmusLerdorf
ZendTechnologies的创办人之一-AndiGutmansFile:ZeevSuraski.jpg
ZendTechnologies的创办人之一-ZeevSuraskiPHP原本的简称为PersonalHomePage[4],是achartengine1.1.0 源码RasmusLerdorf为了要维护个人网页,而用c语言开发的一些CGI工具程序集,来取代原先使用的Perl程序。最初这些工具程序用来显示RasmusLerdorf的个人履历,以及统计网页流量[5]。他将这些程序和一些表单直译器整合起来,称为PHP/FI。PHP/FI可以和数据库连接,产生简单的动态网页程序。RasmusLerdorf在年6月8日将PHP/FI公开释出,希望可以透过社群来加速程序开发与寻找错误[6]。这个释出的版本命名为PHP2,已经有今日PHP的一些雏型,像是类似Perl的变量命名方式、表单处理功能、以及嵌入到HTML中执行的能力。程序语法上也类似Perl,有较多的限制,不过更简单、类似口袋通源码更有弹性。[5]
在年,任职于TechnionIIT公司的两个以色列程序设计师:ZeevSuraski和AndiGutmans,重写了PHP的剖析器,成为PHP3的基础,而PHP也在这个时候改称为PHP:HypertextPreprocessor.[5]。经过几个月测试,开发团队在年月释出了PHP/FI2,随后就开始PHP3的开放测试,最后在年6月正式释出PHP3。ZeevSuraski和AndiGutmans在PHP3释出后开始改写PHP的核心,这个在年释出的剖析器称为ZendEngine[7],他们也在以色列的RamatGan成立了ZendTechnologies来管理PHP的开发。[5]
在年5月日,以ZendEngine1.0为基础的PHP4正式释出,年7月日则释出了PHP5,PHP5则使用了第二代的ZendEngine[5]。PHP包含了许多新特色,标准k线源码像是强化的面向对象功能、引入PDO(PHPDataObjects,一个存取数据库的延伸函数库)、以及许多效能上的增强[8]。目前PHP4已经不会继续更新,以鼓励用户转移到PHP5。[9][]
年PHP5成为了PHP唯一的有在开发的PHP版本。将来的PHP5.3将会加入Latestaticbinding和一些其他的功能强化[][]。PHP6的开发也正在进行中,主要的改进有移除register_globals[]、magicquotes和Safemode的功能。[9][]
[编辑]版本历程
代表意义
红色旧版;官方停止支持
**旧版;官方维护中
绿色目前版本
蓝色未来版本
主要版本次要版本释出日期说明
1..0.年6月8日正式名称为"PersonalHomePageTools(PHPTools)",第一次使用了"PHP"的名字。[5]
2..0.年4月日针对PHP1.0的改进版,速度更快、体积更小,更容易产生动态网页。[5]
3..0.年6月6日开发方式改成多人共同参与。g729源码ZeevSuraski和AndiGutmans为了这个版本重写了剖析引擎。[5]
4..0.年5月日改成以Zend引擎作为剖析器,具有两阶段剖析/标签剖析系统等先进功能。[]
4.1.年月日加入"超全域变量"(superglobals)功能,包含了$_GET、$_POST、$_SESSION等[]
4.2.年4月日默认取消register_globals功能。从网络接收的资料将不会设定成全域变量,增加程序安全性[]。
4.3.年月日加入命令行执行档,称为CLI。[]
4.4.年7月日Addedmanpagesforphpizeandphp-configscripts.[]
4.4.年1月3日Severalsecurityenhancementsandbugfixes.WastobetheendoflifereleaseforPHP4.Securityupdatesonlyuntil--,ifnecessary.[]
4.4.年8月7日Moresecurityenhancementsandbugfixes.ThelastreleaseofthePHP4.4series.[][]
5..0.年7月日ZendEngineIIwithanewobjectmodel.[]
5.1.年月日Performanceimprovementswithintroductionofcompilervariablesinre-engineeredPHPEngine.[]
5.2.年月2日Enabledthefilterextensionbydefault.[]
5.2.年月8日[]emergentbugfix[]
5.2.年2月日[]这个版本解决了5.2.*的超过了多个错误和多个安全问题,增加了稳定性。[]
5.2.9-2(Windows)年3月日[]这个版本解决了在Windows系统下OpenSSL的安全缺陷,与其绑定的OpenSSL版本升级到0.9.8k。[]
5.3.0预计年第二季[]支持命名空间;使用XMLReader和XMLWriter增强XML支持;支持SOAP,[]延迟静态绑定,跳转标签(有限的goto),闭包,NativePHParchives
6..0.0?支持Unicode;移除ereg扩展,'register_globals','magic_quotes'和'safe_mode';AlternativePHPCache;Removalofmime_magicandrewriteoffileinfo()forbetterMIMEsupport[]
[编辑]应用
PHP是一个应用范围很广的语言,特别是在网络程序开发方面。一般来说PHP大多在服务器端执行,透过执行PHP的程序码来产生网页提供浏览器读取,此外也可以用来开发命令行脚本程序和使用者端的GUI应用程序。PHP可以在许多的不同种的服务器、操作系统、平台上执行,也可以和许多数据库系统结合。使用PHP不需要任何费用,官方组织PHPGroup提供了完整的程序源代码,允许使用者修改、编译、扩充来使用。[]
[编辑]语法
PHP的语法参考了Perl、C语言,而且可以整合在HTML之中,以下是一个简单的HelloWorld程序:
phpecho'HelloWorld!';
PHP剖析引擎只剖析?php到?之间的程序码,而不包含在?php到?之间的内容则会直接送出,所以可以用以下的方式来将PHP程序码嵌入在HTML之中:
php//-PHP程式码
html内容
php//-PHP程式码
但是在判断语句中的HTML代码并不会被直接送出:
phpif(false){
HTMLCode
php}
PHP可以用三种注解的形式:C与C++所使用的“/*...*/”与“//”,和Perl的“#”。
[编辑]类型
PHP主要有以下四种变量类型:
整数(integer)
浮点数(float)
布尔数(boolean)
字串(string)
两种复合类型:
阵列(array)
物件(object)
两种特殊类型
NULL
资源(resource)[]
[编辑]变量
PHP中,变量以“$”后接变量名称来表示。变量名称区分大小写。有效的变量名称以字母或底线开头,后接任意数目的字母、数字或底线。[]
[编辑]面向对象
PHP从PHP3开始有了基本的面向对象的特性,但直到PHP5将面向对象部份重新改写之后,PHP的面向对象功能才比较完善。现在PHP可以说是一个有完整面向对象功能的语言。
[编辑]PHP相关资源
[编辑]函数库
主条目:PHP函数库列表
内建多样化的函数是PHP主要的特点之一,这些开放程序码的函数提供了各种不同的功能,例如档案处理、FTP、字串处理、等等。这些函数的使用方法和C语言相近(例如printf),这也是PHP广为流行的原因之一。
除了内建的函数之外,PHP也提供了很多延伸函数库(extension),像是各种数据库连接函数、资料压缩函数、图形处理等等。有些延伸函数库需要从PECL(PHPExtensionCommunityLibrary)取得。
[编辑]源代码编码和加速
PHP源代码是可以直接读取的,即使放到服务器上执行也是一样。虽然让PHP多了弹性,但相对的会造成安全危机和性能下降的问题。
透过PHP编码器,可以保护PHP的源代码不被读取(对商业软件来说特别有需求),也可以提升执行的效能。有许多公司或团体开发PHP的编码器,将PHP程序编译成字节码(bytecode),再透过服务器上安装对应的程序来执行PHP脚本。
除了透过编码器加速之外,PHP还可以透过动态的快取机制来提升速度,加速工具有商业版的,例如ZendPlatform,也有开放源代码的加速软件如eAccelerator、APC、XCache。
[编辑]样板引擎
样板引擎让PHP应用程序可以做逻辑和使用接口上的分离,让程序开发更容易进行,目前比较受欢迎的样板引擎是PHP官方开发的Smarty。不过样板引擎有效能上的争议,因为PHP本身就是一个样板引擎,使用样板引擎反而变成“重新发明了轮子”(reinventingthewheel)。样板引擎最主要的好处就是让不懂PHP程序码的人也可以参与使用接口的开发,因为样板引擎的语言远比PHP简单。
[编辑]未来发展
[编辑]PHP5.3
命名空间(namespaces)原本预计在PHP6提供支持,现在可能改至PHP5.3就支持[
什么是PHP?
php是一种服务器端的,嵌入html的脚本语言。php区别其他像客户端java的地方是它的代码在服务器端执行.php能做什么?
最低水平,php可以做任何其他cgi程序所能做的事,例如收集表格数据,生成动态页面内容,或者收发cookies.可能最强大,最有意义的特性是php支持大范围的数据库.书写一个支持数据库的web页面是难以置信的简单.
下面是当前支持的数据库:
adabasdinterbasesolid
dbasemsqlsybase
empressmysqlvelocis
fileprooracleunixdbm
informixpostgresql
php通过协议也支持与其他服务的"交谈",像imap,snmp,nntp,pop3,甚至是f
PHP:/etc/php.ini /etc/php.d
pure-ftpd:/etc/pure-ftpd.conf
特别注意,mysql的root密码存储在/root/my.cnf文件中,添加虚拟主机时需要使用。若修改了root密码,需手动更新my.cnf文件以保持同步。扩展资料
Linux+Apache+Mysql+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。随着开源潮流的蓬勃发展,开放源代码的LAMP已经与J2EE和.Net商业软件形成三足鼎立之势,并且该软件开发的项目在软件方面的投资成本较低,因此受到整个IT界的关注。从网站的流量上来说,%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决方案.Apache is running a threaded MPM,but your PHP Modle is not compiled to be t
PHPç¼è¯æ¨¡å¼éäºãå¦æå¨windowsä¸ï¼éå¨php.netä¸ä¸è½½ PHP 5.2. zip package ï¼ä¸è¦ä¸debug pakage æ Non-thread-safe zip package ã
è¥å¨linuxä¸ç¼è¯ï¼éå»æ--with-openssl åæ°ã