首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

PHP 简介

PHP 简介

如果您从事基于 Web 的开发工作,那么可能已经听说过PHP。您也许不太确切地知道 PHP是什么、如何工作或者为什么如此热门,但现在该是进一步了解 PHP的时候了。因此本文简要介绍了关于 PHP 基础的基本概念。
一点背景知识PHP是作为一个小开放源码,随着越来越多的人意识到它的实用性从而逐渐发展起来。RasmusLerdorf 在 1994 年发布了 PHP的第一个版本。从那时起它就飞速发展,并在原始发行版上经过无数的改进和完善现在已经发展到版本4.0.3 。
PHP 是一种嵌入在 HTML并由服务器解释的脚本语言。它可以用于管理动态内容、支持数据库、处理会话跟踪,甚至构建整个电子商务站点。它支持许多流行的数据库,包括MySQL、PostgreSQL、Oracle、Sybase、Informix 和 Microsoft SQLServer。
动态与静态内容动态内容为什么这么热门?假设您正在管理有 10个产品的电子商务站点。只要产品不是经常变动或者预料到它不会有太大的变动,那么手工编写10个带有必要的信息、表单和诸如此类内容的静态产品页面是不困难的。但是,假设您在本月再要添加10个或更多产品,然后在下个月要更多,而且价格有时会变动或者想改变站点的观感。那么您就会陷入用手工重新编写数十个,也许上百个静态页面的困境中。
另一方面,假设您从创建 product.php页面开始。它没有静态信息,而是编码成可以从产品数据库中提取信息并动态地构建一个页面。然后您就拥有了一个元数据页面,它可以根据存储在数据库中的信息提供一个、一百个、甚至十万个单独页面。现在网站管理员不再整天都简单重复更新静态页面的工作,因为在更新公司数据库中的信息同时就可以更新页面上的信息。这样就消除了令人头疼的时间延迟(在数据库中更改信息和在网站上显示信息之间的时间间隔)。
总体来说,PHP 非常适合 Web 上的工作。但它并不是唯一的方法;如Perl、Java、JavaScript、ASP、Python、Tcl、CGI以及其它许多方法都可以生成动态的内容。但是,PHP的优点是:它是专为基于 Web 的问题而设计的以及它是开放源码。
如果您正在为文字处理或 3D 游戏寻找程序设计语言,那 PHP可能不是您所需要的语言。如果您需要运行一个具有动态内容、数据库交互和电子贸易的网站,那么就请继续读下去,因为PHP 在这方面确实是非常有用的。
PHP适用的平台大多数常规 PHP 的安装通常是与 Linux 或各种 UNIX 上的 Apache一起运行的 PHP 模块。但是如果正在使用其它平台,不要担心。PHP 可以在Windows NT 和 9x 以及其它许多 Web 服务器上运行。可以在主要介绍Apache/Linux/PHP 组合的一些网站上找到更多有关 PHP的文档,但它并不是支持 PHP 的唯一平台。
许可证和使用购买具有全部功能的嵌入式 Web 脚本语言要花多少钱?一分钱不花?PHP是一个开放源码项目,所以没有购买许可证的费用或限制使用的问题。您可以使用PHP来运行小的、非赢利性站点,或者运行十亿美元的电子商务网站,而且成本是一样的:零。不仅如此,如果想要或需要修改PHP,可以修改它。
PHP 并没有得到 GPL的许可,但它自己的许可证允许重新分发代码和/或二进制文件。
使用PHP好,现在您已经确信要真正地尝试一下 PHP了吧。我们先看一些简单的例子,这样您对 PHP就有个大概了解。记住决这不是深入了解 PHP的途径,仅仅是个快速入门而已。
"Hello, World!"
为了对 PHP 有个了解,让我们来看一下几个非常简单的 PHP 脚本。既然"Hello, World!" 是个常用的示例,那我们就编写一个友好的小 "Hello,World!" 脚本。      
如早些时候所提到的,PHP 是嵌入在 HTML中的。(可能您的文件几乎没有包含 HTML,但是通常这个文件是 PHP 与HTML 的混合体。)这意味着在您正常的 HTML 中(或XHTML,如果您处在比较前沿的位置),会有类似这样的 PHP 语句:
1
2
3
4
5
6
7
<body bgcolor="white">
    <strong>How to say "Hello, World!"</strong>
         
        <?php echo "Hello, World!";?>
    <br>
    Simple, huh?
</body>




很简单,不是吗?这仅仅是一个 "echo"语句,就这样。当然,仅仅这样是没有多大用处的。但是它确实告诉我们关于语言的一些东西。(顺便说一下,如果检查HTML 输出,就会注意到 PHP 的代码并没有出现在从服务器送到您 Web浏览器的文件中。所有出现在 Web 页面中的 PHP都会被处理并从页面中剥离;从 WEB 服务器返回给客户机的仅仅是纯 HTML输出。)
在 Web 页面上打印日期和时间
现在我们做一些稍微实用的事情。这个示例将在 Web页面上打印日期和时间。      
1
2
3
4
5
6
7
8
9
10
11
<body bgcolor="white">
    <strong>An Example of PHP in Action</strong>
<?php echo "The Current Date and Time is:<br>";
         echo date("g:i A l, F j Y.");?>
// g = the hour, in 12-hour format
// i = minutes
// A = print AM or PM, depending...
// l = print the day of the week
// F = print the month
// j = print the day of the month
// Y = print the year - all four digits




此代码生成以下输出:
1
2
The Current Date and Time is:
11:00 AM Friday, October 20 2000.




请注意,这里揉和了 PHP 和 HTML。假设您已经了解HTML,所以这里仅解释 PHP 代码。在 PHP.net (请参阅 )上可以找到完整的 PHP 参考。      
PHP 代码是以标记         <?php 开始并以         ?> 结束的。这就告诉服务器在         <?php 和         ?> 之间的所有内容需要用 PHP指令进行语法分析,如果发现它们,就需要执行它们。请注意,当处理和服务您的文件时,客户机会收到普通的HTML 文件。浏览您站点的人看不到任何一个的 PHP指令,除非您犯了错误,服务器把这些 PHP代码分割开而没有先处理它们。      
一般情况下会处理在         <?php 和         ?> 之间的常规 HTML 标记。请注意上面这个简单的脚本中包含了         <br> 这个分行标记。如果不能够很好地利用 HTML格式,那么 PHP 就不会非常有用。      
如果想和其它东西一起使用,或者您和我一样是一个健忘的人,您可能会想到要注释代码。//字符表明是注释,服务器不会处理被 // 标记的内容,也不会象 HTML中的注释一样,把内容传给客户机。如果在         <?php 和         ?> 标记之间有标准的         <!-- comment--> ,那么当服务器对它进行语法分析时,有可能引起错误。显然,您可能不会象我对这个基本功能一样注释您的代码,但它确是一个很好的示例。      
最后要注意的是,每个 PHP函数都封闭在圆括号内,并以分号结束,这和 C 或 Perl相似。由于一个简单的印刷错误而遗漏一个结束的圆括号或分号,造成一些语法错误是很常见的,所以要确保检查代码。在象Vim 或 Emacs 这样的编辑器(可以突出显示语法)中编写 PHP是有助于消除此类错误。它使您能立刻捕捉到错误。
date 函数仅是内置 PHP 函数之一。PHP附带了许多功能可以用于数据库连接、创建PDF、Shockwave、JPG、GIF、PNG和其它图象文件、发送电子邮件、阅读和书写文件、语法分析XML、会话处理、经由 HTTP 直接与浏览器对话,以及许多其它功能。
PHP 也允许用户定义自己的函数。这使 PHP 语言能够经由 Web提供大量的解决方案。而不是从一开始就把所有的事情都编写好了。在您编写函数之前,确保已经查看诸如Zend.com、PHP Wizard 当然还有Freshmeat,来看是否已经有您正在尝试编写的函数(请参阅 )。      
对于提供标题、自动更新新闻网站、基于 Web的电子邮件客户机、数据库管理和其它方面,已经有许多开放源码的 PHP解决方案。再从头来做这些是毫无意义的。相反,应该从已经构建好的基础开始,并把它定制到您自己的解决方案中。如果您仅仅是初步了解和学习PHP,在心中并没有具体的项目,那么这些项目对于使用 PHP仍然是很好的示例和学习资料。
结束语这篇 PHP 脚本语言的简要概述阐明了 PHP功能和用法。在以后的文章中,我会讲述通过访问 MySQL数据库来创建动态的 Web 产品页面。在那之前,请查看下面关于 PHP的参考资料以了解更多信息。
返回列表