Php语言基础知识PHP,是英文超级文本预处理语言Hypertext Preprocessor的缩写。
PHP 是一种HTML 内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C 语言,被广泛的运用。
PHP 独特的语法混合了C、Java、Perl 以及PHP 自创的语法。
PHP安装它可以比CGI或者Perl更快速的执行动态网页。
用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI 要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
PHP具有非常强大的功能,所有的CGI的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。
最重要的是PHP可以用C、C++进行程序的扩展!PHP原始为Personal Home Page的缩写,现已经正名为"PHP: Hypertext Preprocessor"的缩写。
注意不是“Hypertext Preprocessor”的缩写,这种将名称放到定义中的写法被称作递归缩写。
PHP于19ISAPI筛选器94年由Rasmus Lerdorf创建,刚刚开始是Rasmus Lerdorf 为了要维护个人网页而制作的一个简单的用Perl语言编写的程序。
最初这些工具程序用来显示Rasmus Lerdorf 的个人履历,以及统计网页流量。
后来又用C语言重新编写,包括可以访问数据库。
他将这些程序和一些表单直译器整合起来,称为PHP/FI。
PHP/FI 可以和数据库连接,产生简单的动态网页程序。
在1995年早期以Personal Home Page Tools (PHP Tools) 开始对外发表第一个版本,Lerdorf写了一些介绍此程序的文档。
并且发布了PHP1.0!在这早期的版本中,提供了访客留言本、访客计数器等简单的功能。
以后越来越多的网站使用了PHP,并且强烈要求增加一些特性。
比如循环语句和数组变量等等;在新的成员加入开发行列之后,Rasmus Lerdorf 在1995年6月8日将PHP/FI 公开发布,希望可以透过社群来加速程序开发与寻找错误。
这个发布的版本命名为PHP 2,已经有今日PHP 的一些雏型,像是类似Perl 的变量命名方式、表单处理功能、以及嵌入到HTML 中执行的能力。
程序语法上也类似Perl,有较多的限制,不过更简单、更有弹性。
PHP/FI加入了对mySQL的支持,从此建立了PHP在动态网页开发上的地位。
到了1996年底,有15000个网站使用PHP/FI;在1997年,任职于Technion IIT 公司的两个以色列程序设计师:Zeev Suraski 和Andi Gutmans,重写了PHP 的剖析器,成为PHP 3 的基础。
而PHP 也在这个时候改称为PHP:Hypertext Preprocessor.[5]。
经过几个月测试,开发团队在1997年11月发布了PHP/FI 2。
随后就开始PHP 3 的开放测试,最后在1998年6月正式发布PHP 3。
Zeev Suraski 和Andi Gutmans 在PHP 3 发布后开始改写PHPPHP 的核心,这个在1999年发布的剖析器称为Zend Engine[7],他们也在以色列的Ramat Gan 成立了Zend Technologies 来管理PHP 的开发。
在2000年5月22日,以Zend Engine 1.0为基础的PHP 4正式发布,2004年7月13日则发布了PHP 5,PHP 5则使用了第二代的Zend Engine[5]。
PHP包含了许多新特色,像是强化的面向对象功能、引入PDO(PHP Data Objects,一个存取数据库的延伸函数库)、以及许多效能上的增强。
目前PHP 4已经不会继续更新,以鼓励用户转移到PHP 5。
2008年PHP 5成为了PHP唯一的有在开发的PHP版本。
将来的PHP 5.3将会加入Late static binding和一些其他的功能强化。
PHP 6 的开发也正在进行中,主要的改进有移除register_globals、magic quotes 和Safe mode的功能。
PHP最新稳定版本:5.3.13(2012.5.8) PHP最新发布版本:5.4.4(2012.6.13)这个版本可以支持Apache 2.4。
PHP的特性包括PHP:1、开放的源代码:所有的PHP源代码事实上都可以得到。
2、PHP是免费的。
和其它技术相比,PHP本身免费。
3、php的快捷性程序开发快,运行快,技术本身学习快。
嵌入于HTML:因为PHP可以被嵌入于HTML语言,它相对于其他语言。
编辑简单,实用性强,更适合初学者。
4、跨平台性强:由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS下。
5、效率高:PHP 消耗相当少的系统资源。
6、图像处理:用PHP动态创建图像7、面向对象:在php4,php5 中,面向对象方面都有了很大的改进,现在php完全可以用来开发大型商业程序。
8、专业专注:PHP支持脚本语言为主,同为类C语言。
1,伪静态2,静态页面生成3,数据库缓存4,过程缓存5,div+cssw3c 标准6,大负荷7,分布式8,jquery框架集成,ShopNC框架9,flex 10,桌面程序应用(不擅长)11,支持MVC模型12,PHP3PHP3跟Apache服务器紧密结合的特性;PHP加上它不断的更新及加入新的功能,而且几乎支持所有主流与非主流数据库。
再以它能高速的执行效率,使得PHP在1999年中的使用站点已经超过了150000。
加上它的源代码完全公开,在Open Source意识抬头的今天,它更是这方面的中流砥柱。
不断地有新的函数库加入,以及不停地更新的活力。
使得PHP无论在UNIX、LINUX或是Windows的平台上都可以有更多新的功能。
它提供丰富的函数,使得在程序设计方面有着更好的支持。
PHP4.0整个脚本程序的核心大幅更动,让程序的执行速度,满足更快的要求。
在最佳化之后的效率,已较传统CGI或者ASP等程序有更好的表现。
而且还有更强的新功能、更丰富的函数库。
无论您接不接受,PHP 都将在Web CGI 的领域上,掀起巅覆性的革命。
对于一位专业的Web Master 而言,它将也是必修课程之一。
PHP 4.0是更有效的,更可靠的动态Web页开发工具,在大多数情况运行比PHP 3.0要快,其脚本描述更强大并且更复杂,最显著的特征是速率比的增加。
PHP4.0这些优异的性能是PHP 脚本引擎重新设计产生的结果:引擎由AndiGutmans 和Zeev Suraski从底层全面重写。
PHP4.0 脚本引擎——Zend引擎,使用了一种更有效的编译——执行方式,而不是PHP 3.0 采用的执行——当解析时模型。
PHP4的优越性PHP4在3.0版的基础上增加或增强了许多有用的特征,主要如下:⑴别名:在PHP4中,可以利用引用为变量赋值,这给编程带来了很大的灵活性。
⑵扩充了API模块:PHP 4.0 为扩展的API 模块的提供了扩展PHP接口模块,它比旧的API 版本显著地快。
PHP 模块已有的及最常用的接口多数被转换到使用这个扩展的接口。
⑶自动资源释放:PHP4增加了引用计数功能,这种新技术的引入使PHP4具有了自动内存管理功能,减轻了开发人员的负担。
⑷布尔类型:PHP 4.0 支持布尔类型。
⑸进程生成:在UNIX 环境下的PHP 4.0 提供了一个很智能和通用的生成进程,使用了一种名为基于automake/libtool的系统生成技术。
⑹COM/DCOM 支持:PHP 4.0 提供COM/DCOM 支持( 仅用于Windows 环境) 可以无缝地存取和访问COM 对象。
⑺与PHP 3.0 兼容性很好:PHP 4.0 是与PHP 3.0 代码向后兼容性接近100%。
由于PHP 4 的改进的体系结构,两者有一些细微的差别,但是大多数人将可能永远不可能遇上这种情况。
⑻配置:PHP4重新设计和增强了PHP.ini文件,这使得用PHP.ini来配置PHP显得极为容易,这个文件可以在运行时被Apache(unix系统)或由Windows 注册(Windows 环境)。
⑼加密支持:PHP4实现了完整的加密,这些加密功能是一个完整的mycrypt库,并且PHP 4.0 支持哈希函数。
Blowfish,TripleDES,MD5,并且SHA1 也是可使用的一些加密算法。
⑽类型检查:PHP 4.0 支持同一操作符用于评类型检查:===(3 等号运算符),为在两个值和其类型之间作检查。
例如,'3' ===3 将视为假( 类型是不同的),而3 ==3 ( 相等判断) 将视为真。
⑾FTP 支持:PHP 4.0 支持FTP。
通常,你会为通过一个调制解调器连接下载一个大文件提供一个接口。
然而,如果你确实有需要,可以使用PHP。
⑿PHP4新增函数或功能增强函数:PHP 4.0 新增了许多函数,同时也将许多现有的函数功能进行了增强,以下是一些例子。
array_count_values() eval() foreach() include() ob_end_clean() ob_end_flush() ob_get_contents() ob_start() strip_tags() unset()。
⒀here打印:PHP 4.0 的Here打印是与Perl类似的,尽管完全不相同。
Here是打印大容量文章的一个有用的方法,例如在HTML文件中,不会漏掉任何一个字符,例如目录标记。
⒁HTTP Session fallback 系统:为HTTP Session管理的一个fallback 系统在PHP 4.0被实现。
缺省情况下,Session标识符由cookies存储。
如果没有cookies支持或一项cookies任务失败,Session标识符自动被创建并在URL 的查询字符串中被携带。
⒂ISAPI 支持:PHP 4.0 能作为一个个性化的ISAPI 模块作为IIS插件。
这比PHP 3.0 更有效,它作为一个外部的程序来运行。
⒃内存:PHP 4.0 能更有效的使用内存,导致较少的内存占用消耗,这主要归功于引用计数技术的实现。
⒄其他类成员函数:在PHP 4.0 你能在成员函数本身的作用域或全局范围内调用其他类的成员函数。
例如,你能用一个子函数覆盖父函数,并在子函数中调用父函数。
⒅多维数组:在PHP 4.0 ,利用GET,POST,Cookies的进行的数据传输支持多维数组。