Joe Brockmeier 简要介绍了 PHP 脚本语言,讨论了 PHP 的起源、性能和适用的平台。一个简单的 PHP 脚本示例则着重说明了其基本语法和用法。
如果您从事基于 Web 的开发工作,那么可能已经听说过 PHP。您也许不太确切地知道 PHP 是什么、如何工作或者为什么如此热门,但现在该是进一步了解 PHP 的时候了。因此本文简要介绍了关于 PHP 基础的基本概念。
一点背景知识<br> PHP 是作为一个小开放源码,随着越来越多的人意识到它的实用性从而逐渐发展起来。Rasmus Lerdorf 在 1994 年发布了 PHP 的第一个版本。从那时起它就飞速发展,并在原始发行版上经过无数的改进和完善现在已经发展到版本 4.0.3 。
PHP 是一种嵌入在 HTML 并由服务器解释的脚本语言。它可以用于管理动态内容、支持数据库、处理会话跟踪,甚至构建整个电子商务站点。它支持许多流行的数据库,包括 MySQL、PostgreSQL、Oracle、Sybase、Informix 和 Microsoft SQL Server。
动态与静态内容
动态内容为什么这么热门?假设您正在管理有 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!" <br> 为了对 PHP 有个了解,让我们来看一下几个非常简单的 PHP 脚本。既然 "Hello, World!" 是个常用的示例,那我们就编写一个友好的小 "Hello, World!" 脚本。
如早些时候所提到的,PHP 是嵌入在 HTML 中的。(可能您的文件几乎没有包含 HTML,但是通常这个文件是 PHP 与 HTML 的混合体。)这意味着在您正常的 HTML 中(或 XHTML,如果您处在比较前沿的位置),会有类似这样的 PHP 语句:
<code><body bgcolor="white"> <strong>How to say "Hello, World!"</strong> <font color="#ff0000"><?php echo "Hello, World!";?></font> <br> Simple, huh?</body> </code> ログイン後にコピー |
很简单,不是吗?这仅仅是一个 "echo" 语句,就这样。当然,仅仅这样是没有多大用处的。但是它确实告诉我们关于语言的一些东西。(顺便说一下,如果检查 HTML 输出,就会注意到 PHP 的代码并没有出现在从服务器送到您 Web 浏览器的文件中。所有出现在 Web 页面中的 PHP 都会被处理并从页面中剥离;从 WEB 服务器返回给客户机的仅仅是纯 HTML 输出。)
在 Web 页面上打印日期和时间 <br> 现在我们做一些稍微实用的事情。这个示例将在 Web 页面上打印日期和时间。
<code><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 </code> ログイン後にコピー |
此代码生成以下输出:
<code>The Current Date and Time is: 11:00 AM Friday, October 20 2000.</code> ログイン後にコピー |
ここでは PHP と HTML が混在していることに注意してください。 HTML についてはすでに理解していることを前提としているため、ここでは PHP コードのみを説明します。完全な PHP リファレンスは PHP.net にあります (リファレンス を参照)。
PHP コードはタグ <?php
で始まり ?>
で終わります。これは、<?php
と ?>
の間のすべてを PHP 命令で解析する必要があり、見つかった場合は実行する必要があることをサーバーに伝えます。ファイルが処理されて提供されるとき、クライアントはプレーンな HTML ファイルを受け取ることに注意してください。サイトを閲覧している人には、間違いを犯してサーバーが最初に処理せずに PHP コードを分割しない限り、PHP ディレクティブは表示されません。
通常、<?php
と ?>
の間の通常の HTML タグが処理されます。上記の単純なスクリプトには <br>
改行タグが含まれていることに注意してください。 PHP は、HTML 形式をうまく活用できなければ、あまり役に立ちません。
他のもので使用したい場合、または私のように忘れっぽい人は、コードをコメントすることを考えるかもしれません。 // 文字は、それがコメントであることを示します。サーバーは、// でマークされたコンテンツを処理せず、HTML のコメントのようにコンテンツをクライアントに渡しません。 <?php
タグと ?>
タグの間に標準の <!-- comment -->
がある場合、サーバーがそれを解析するときにエラーが発生する可能性があります。もちろん、私がこの基本機能で行ったようにコードにコメントを付けることはおそらくないでしょうが、これは良い例です。
最後に、C や Perl と同様に、すべての PHP 関数が括弧で囲まれ、セミコロンで終了することに注意してください。右括弧やセミコロンの欠落などの単純なタイプミスが原因で構文エラーが発生することはよくあるため、必ずコードを確認してください。 Vim や Emacs などのエディター (構文強調表示付き) で PHP を作成すると、このようなエラーを排除するのに役立ちます。これにより、エラーをすぐに見つけることができます。
日付関数は、組み込みの PHP 関数の 1 つにすぎません。 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 リファレンスで詳細を確認してください。
<br> <br>