2010年6月15日 了解php-学习php理由 什么是PHP 引用PHP(Hgpertext Preprocessor或Personal Home Page Tools)的官方站点http://www.php.net的定义来说,PHP是一种服务器端、跨平台、HTML嵌入式的脚本语言。其实,它和大家所熟知的ASP一样,是一门常用于Web编程的语言。PHP酝酿于1994年,1995年发布其第一个公开版本,截止目前已发布的最新版本为PHP5.0。 PHP是一种免费软件,它能运行在包括Windows、Linux等在内的绝大多数操作系统环境中,常与免费Web服务软件Apache和免费数据库Mysql配合使用于Linux平台上,具有最高的性能价格比,号称“黄金组合”。 也许PHP最强大和最重要的特征是它的数据库支持,目前其支持范围覆盖了包括Oracle、Sybase、MySQL、ODBC等在内的大多数常见数据库。使用它编写一个含有数据库功能的网页程序变得十分简单。 为什么学习PHP 1、门槛低 在c/c++、java、php、asp这些开发语言中,php是最容易学的语言,学习成本是c和java的1/10都不到,是asp的1/2都不到。我们设置了208学时的课程可以完全保证零起点的学员最后达到独立开发一个中小型网站的水平。 2、竞争少 相对与其他开发语言,掌握php的程序员目前非常少。学校基本上没有开设php课程的,培训php的机构也少之又少。因为php是一个和互联网紧密相关的课程,一般的培训机构没有互联网相关经验,很难培训好这门课程。另外,从求职的角度来看,拿php招聘信息和最热门的java或asp招聘信息比较,可以发现php招聘量达到java或asp的1/3左右,但是php从业人员只是java或asp从业人员的1/40左右。 3、需求旺 互联网相关企业几乎都在用php语言进行网站开发。其中包括sina,sohu,网易,tom,qq,baidu等几乎所有的大型网站。大家可以上搜职网或其他招聘网站观察一下,几乎这些企业都招聘过php相关开发人员,而且每天在互联网上有大量的php开发人员的招聘信息。但是互联网企业最头疼的问题就是招收不到有实际php学习经验的人员,更别说接受过php专业培训的人员了。很多企业无可奈何之下只能招收有其他开发语言经验的人,经过内部培训再从事php项目的开发。 4、发展空间大 尽管php门槛低,学习起来容易,因此有些人误以为这是一个不太有发展前景的语言。其实这是一个很大的误区,很多人就是收益于此,在从业的很短时间内走上了很高的台阶。因为其他语言至少要学习并从业很多年才能勉强算上掌握,因为大家都必须掌握这些语言的很多底层的细节问题,一直上不到一个比较高的层次来考虑问题。细节上花的时间太多反而失去了很多高层次架构上的研究机会。而php在轻松掌握之后就可以更多的考虑高层次架构上的问题了,细节上的问题这门语言的开发者都替从业者解决了。所以互联网业内上升的最快的很多都是php开发人员。 PHP语言发展历史 1、1994年, Rasmus Lerdorf 开始计划发展PHP,并在1995年以Personal Home Page Tools对外发表第一个版本。在这早期的版本中,提供了访客留言本、访客计数器等简单的功能。 2、1995年,第二版的PHP问市,定名为 PHP/FI(Form Interpreter)。PHP/FI并加入了mSQL的支持,自此奠定了PHP在动态网页开发上的影响力。 3、1996 年底,有15,000个Web网站使用PHP/FI。 4、1997年,使用 PHP/FI 的Web网站成长到超过50,000个。Zeev Suraski 及 Andi Gutmans加入了开发小组,开始了第三版的开发计划,从此PHP成为了真正意义上的开源项目。 5、1998年6月,PHP.net发布了PHP 3.0。在这一版本中PHP可以跟Apache服务器紧密地结合,几乎可以支持所有主流与非主流数据库;而且它拥有非常高的执行效率,这些优势使1999年使用 PHP的网站超过了150,000 个。 6、现在PHP5.0版本强化更多的功能。首先,完全实现面向对象,提供名为PHP兼容模式的功能。其次是XML功能,PHP5.0版本支持可直观地访问XML数据、名为SimpleXML的XML处理用界面。同时还强化了XML Web服务支持,而且标准支持SOAP扩展模块。 数据库方面,PHP新版本提供旨在访问MySQL的新界面--MySQLi。除此前的界面外,还可以使用面向对象界面和预处理语句(Prepared Statement)等MySQL的新功能。另外,PHP5.0上还捆绑有小容量RDBMS--SQLite。 PHP功能特点 PHP语言的特点: ◎快速:PHP是一种强大的CGI脚本语言,语法混合了C、Java、Perl和PHP式的新语法,执行网页比CGI、Perl和ASP更快,这是它的第一个突出的特点。 ◎具有很好的开放性和可扩展性:PHP属于自由软件,其源代码完全公开,任何程序员为PHP扩展附加功能非常容易。 ◎数据库支持:PHP支持多种主流与非主流的数据库,如:、Adabas D、DBA、dBase、dbm、filePro、Informix、InterBase、mSQL、MySQL、Microsoft SQL Server、Solid、Sybase、ODBC、oracle、oracle 8、PostgreSQL等。其中,PHP与MySQL是现在绝佳的组合,它们的组合可以跨平台运行。 ◎面向对象编程:PHP提供了类和对象。为了实现面向对象编程,PHP4及更高版本提供了新的功能和特性,包括对象重载、引用技术等。 ◎版本更新速度快:与数年才更新一次的ASP相比,PHP的更新速度就要快得多,因为PHP每几周就更新一次。 ◎具有丰富的功能:从对象式的设计、结构化的特性、数据库的处理、网络接口应用、安全编码机制等,PHP几乎涵盖了所有网站的一切功能。 ◎可伸缩性:传统上网页的交互作用是通过CGI来实现的。CGI程序的伸缩性不很理想,因为它为每一个正在运行的CGI程序开一个独立进程。解决方法就是将经常用来编写CGI程序的语言的解释器编译进你的web服务器(比如mod_perl,JSP)。PHP就可以以这种方式安装,虽然很少有人愿意这样以CGI方式安装它。内嵌的PHP可以具有更高的可伸缩性。 PHP语言优势 PHP语言的优势 ◎良好的安全性:PHP是开源软件,所有PHP的源代码每个人都可以看得到,代码在许多工程师手中进行了检测,同时它与Apache编绎在一起的方式也可以让它具有灵活的安全设定,PHP具有了公认的安全性能。 ◎跨平台特性:ASP比不上PHP的跨平台能力,PHP几乎支持所有的操作系统平台及数据库系统,正是它的这种能力让UNIX/Linux有了一种与ASP媲美的开发语言,并广为流行。 ◎易学性:PHP嵌入在HTML语言中,且坚持脚本语言为主,与Java、C等语言不同,语法简单、书写容易,方便学习掌握。现在市面上也有了大量的书,同时Internet上也有大量的代码可以共享 ◎执行速度快:占用系统资源少,代码执行速度快。 ◎免费:在流行的企业应用LAMP平台中,PHP、Linux、Apache、MySQL都是免费软件,降低了企业架设成本。 PHP能做什么 PHP 能做任何事。 PHP 主要是用于服务端的脚本程序,因此您可以用 PHP 来完成任何其它的 CGI 程序能够完成的工作,例如收集表单数据,生成动态网页,或者发送/接收 Cookies。但 PHP 的功能远不局限于此。 PHP 脚本主要用于以下三个领域。 1、服务端脚本。 这是 PHP 最传统,也是最主要的目标领域。开展这项工作您需要具备以下三点:PHP 解析器(CGI 或者服务器模块)、WEB 服务器和 WEB 浏览器。您需要在运行 WEB 服务器时,安装并配置 PHP,然后,可以用 WEB 浏览器来访问 PHP 程序的输出,即浏览服务端的 PHP 页面。请查阅“安装”一章以获取更多信息。 2、命令行脚本。 您可以编写一段 PHP 脚本,并且不需要任何服务器或者浏览器来运行它。通过这种方式,您仅仅只需要 PHP 解析器来执行。这种用法对于依赖 cron(Unix 或者 Linux 环境)或者 Task Scheduler(Windows 环境)的日常运行的脚本来说是理想的选择。这些脚本也可以用来处理简单的文本。请参阅“PHP 的命令行模式”以获取更多信息。 3、编写客户端的 GUI 应用程序。 对于基于窗口式的应用程序来说,PHP 或许不是一种最好的语言,但是如果您非常精通 PHP,并且希望在您的客户端应用程序中使用 PHP 的一些高级特性,您可以利用 PHP-GTK 来编写这些程序。用这种方法,您还可以编写跨平台的应用程序。PHP-GTK 是 PHP 的一个扩展,在通常发布的 PHP 包中并不包含它。如果您对 PHP-GTK 感兴趣,请访问其网站以获取更多信息。 PHP 能够用在所有的主流操作系统上,包括 Linux、Unix 的各种变种(包括 HP-UX、Solaris 和 OpenBSD)、Microsoft Windows、Mac OS X、RISC OS 等。 今天,PHP已经支持了大多数的 WEB 服务器,包括 Apache、Microsoft Internet Information Server(IIS)、Personal Web Server(PWS)、Netscape 以及 iPlant server、Oreilly Website Pro Server、Caudium、Xi****i、OmniHTTPd 等。对于大多数的服务器,PHP 提供了一个模块;还有一些 PHP 支持 CGI 标准,使得 PHP 能够作为 CGI 处理器来工作。 综上所述,使用 PHP,您可以自由地选择操作系统和 WEB 服务器。同时,您还可以在开发时选择使用面对过程和面对对象,或者两者混和的方式来开发。尽管 PHP 目前的版本还没有支持 OOP 所有的标准,但很多代码仓库和大型的应用程序(包括 PEAR 库)仅使用 OOP 代码来开发。 使用 PHP,您并不局限于输出 HTML。PHP 还能被用来动态输出图像、PDF 文件甚至 Flash 动画(使用 libswf 和 Ming)。您还能够非常简便的输出文本,例如 XHTML 以及任何其它形式的 XML 文件。PHP 能够自动生成这些文件,在服务端开辟出一块动态内容的缓存,可以直接把它们打印出来,或者将它们存储到文件系统中。 PHP 最强大最显著的特性之一,是它支持很大范围的数据库。您会发现利用 PHP 编写数据库支持的网页简单得难以置信。目前,PHP 支持如下数据库: Adabas D Ingres oracle (OCI7 and OCI8) dBase InterBase Ovrimos Empress FrontBase PostgreSQL FilePro (read-only) mSQL Solid Hyperwave Direct MS-SQL Sybase IBM DB2 MySQL Velocis Informix ODBC Unix dbm 我们同时还有一个 DBX 扩展库使得您可以自由的使用该扩展库支持的任何数据库。另外,PHP 还支持 ODBC,即 Open Database Connection Standard(开放数据库连接标准),因此您可以连接任何其它支持该世界标准的数据库。 PHP 还支持利用诸如 LDAP、IMAP、SNMP、NNTP、POP3、HTTP、COM(Windows 环境)等不计其数的协议的服务。您还可以开放原始网络端口,使得任何其它的协议能够协同工作。PHP 支持和所有 WEB 开发语言之间的 WDDX 复杂数据交换。关于相互连接,PHP 已经支持了对 Java 对象的即时连接,并且可以将他们自由的用作 PHP 对象。您甚至可以用我们的 CORBA 扩展库来访问远程对象。 PHP 具有极其有效的文本处理特性,支持从 POSIX 扩展或者 Perl 正则表达式到 XML 文档解析。为了解析和访问 XML 文档,我们支持了 SAX 和 DOM 标准。您可以使用我们的 XSLT 扩展库来转换 XML 文档。 如果您将 PHP 用于电子商务领域,您会发现其 Cybercash payment、CyberMUT、VeriSign Payflow Pro 以及 CCVS 函数对于您的在线交易程序来所是非常有用的。 另外,我们还有很多其它有趣的扩展库。例如 mnoGoSearch 搜索引擎函数、IRC 网关函数、多种压缩工具(gzip、bz2)、日历转换、翻译…… PHP人才现状 ◎人才储备不足:国内的网络开发语言人才主要是基于Windows平台的Asp.net开发人员和部分的Java. JSP ,由于微软和Sun公司的霸主优势,投入了大量的市场费用,从而产生了大量的相关人才,同时由于商业目的,阻碍了开源软件的发展。互联网公司没有强大的资金后盾和本身的行业特点,多采取了Linux等开源平台,但是没有相应的开源软件的人才储备。 ◎培训体系的不健全:PHP语言在西方的应用远远高于其它的网络开发语言,主要是对PHP的认知程度和比较普遍的培训机构。目前在国内我们还没有看到PHP的专业培训机构,包括大学课程,虽然很多的机构有意向开设php培训教程|php网站开发培训|lamp软件开发培训教程|php培训课程,但都苦于没有相关的课程内容和讲师。由于专业的培训课程的匮乏,PHP人才更多地采取自学和依靠网络来获取知识,导致知识体系不健全和不系统。 ◎Web开发技术发展迅速的结果:由于互联网是高速发展行业,一个内容热点从产生到滑坡,经常是两年或一年,甚至更短的周期,就会有新的热点出现,PHP虽然是推动这些热点的技术支持,但是国内还没有成熟的认知,一项新技术从应用、成熟、到人才储备、形成专业课程,至少要有3年以上的时间;而目前由于国内的教育体制总是落后于市场需求的原因,这种市场的需求还没有反馈到国内的教育体系中,同时输送到企业的人才也是落伍于Web的发展。 ◎人才对PHP的认知程度肤浅:很多的Web人才没有意识到PHP的价值,存留于微软和Sun这些大公司的左右,总是觉得PHP开发技术含量低,而不屑于从事这种开发,不能认知到PHP在发达西方国家的发展形势。实际上目前在西方我们可以看到PHP的无所不在,使用PHP企业中不乏一些著名的世界大公司,比如德意志银行的交易系统、华尔街的股票在线买卖、汉莎航空公司的票务处理、Orange短信业务处理,甚至美国联邦储,宇航局都采用了PHP技术。 « 上一篇 adodb 下一篇 » 从零开始跟周梓学php教程-第五天