PHP Hypertext Preprocessor

The remarkable volume of information which has moved to the Web over the last few years, and the complexity of delivering it dynamically to Web users, have resulted in the increased popularity of programming languages designed specifically for delivery of Web content. The PHP Hypertext Preprocessor is one of the most widely used languages in this field, found on more than 16 million Web sites (www.php.net/usage.php).

Python vs. PHP: Choosing your next project's language

PHP is similar to Microsoft Active Server Pages, Java Servlets and Cold Fusion Module but is commonly held to be much easier to program (or 'script') with, much faster than its competitors and, best of all, it is free to use and distribute.

What is a Hypertext Preprocessor?

These programs read and translate instructions embedded in a Web page before the Web server sends it to your browser (JavaScript could be said to be a Hypertext Postprocessor in as much as it is interpreted after the delivery of the page).

It might be easier to understand this in an example: HelpScreen.com.au is powered by PHP and when you open www.HelpScreen.com.au/index.php in your Web browser, the Web server running the site asks PHP to translate any embedded instructions in the Web page. Within the page itself, PHP is "instructed to: check if the person requesting the page is logged in; generate a list of HelpScreen categories; locate the most recent questions on the site; generate the HelpScreen poll information, and much more. It is testament to the design of PHP that all this takes only a split second.

Should I use PHP?

PHP is ideal if you want your Web pages to be generated dynamically. That is, if you are finding it too laborious to update static Web pages constantly (consider how time-consuming it would be to rebuild the HelpScreen.com.au Web site every time someone asked a question!) or if your Web page needs to get information from other places, such as the system clock to display the current time, or a file or database system to display an address book.

How do I use PHP?

In order to use PHP you will need access to a Web server which runs the PHP Preprocessor. If your Web site is hosted by your ISP or a Web hosting company, you should enquire if they offer access to PHP; many do. If your Web site runs on your own server, you can install PHP on it yourself. If you are going to do this, follow these installation instructions:

Linux/UNIX users should unpack the source archive php-4.0.5.tar.gz. For information on installation, see the INSTALL file in the archive.

Windows users should unpack the Windows' binary release located in php-4.0.5-Win32.zip. Follow the instructions in install.txt for information on how to install PHP for your Web server.

If you don't have a Web server, you can use the Apache distribution. Linux/UNIX users should use apache_1.3.20.tar.gz archive. Installation information is included in the INSTALL file, as in the case of PHP. Windows users need only execute the file apache_1.3.20-win32-no_src-r2.msi. This will launch an install wizard that will guide you through the installation.

Setting up the PHP processor and your Web server is only half the story, however. Writing a PHP 'script' which will be processed by this system involves embedding instructions in a text file with the HTML you want to output. As in the case of an HTML document, this can be done with a standard text editor such as Vi or Pico on Linux/UNIX systems, or Notepad under Windows.

Let's have a look at a simple PHP script:<HTML><BODY> <? echo "Hello World!"; ?><? echo "The time is ".date('D M d H:i:s T Y')."\n"; ?> </BODY> </HTML>Save this file as hello.php and upload it to your PHP-enabled Web server. Requesting this page from your Web server with your browser will give you a page containing 'Hello World!' and a formatted current date. Notice that the PHP instructions are bracketed by <? and ?> tags - this is how the preprocessor knows the difference between HTML and PHP. PHP code (and all HTML) outside these brackets will be ignored and simply sent directly to the Web browser of the person requesting the page.

The two instructions which do the work in our example are 'echo' and 'date'. These functions are built into PHP. The echo function does what its name suggests - it 'echoes' to output the string following it. The second call to the echo function is followed by a string made up of several substrings. Next month we will look at how this works, and why it is useful in PHP.

Meanwhile, the date() function allows us to format the current date and time (see www.php.net/manual/en/function.date.php for meanings of the letters passed to the date() function). There are many other built- in PHP functions, all of which are documented in the PHP manual at www.php.net/manual/en/.

Next we will take a close look at strings in PHP as well as exploring the difference between functions and control structures (such as loops) in preparation for our first project: a PHP script which manages an online address book.

Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Gavin Sherry

PC World

Comments

Comments are now closed.

Most Popular Reviews

Follow Us

GGG Evaluation Team

Kathy Cassidy

STYLISTIC Q702

First impression on unpacking the Q702 test unit was the solid feel and clean, minimalist styling.

Anthony Grifoni

STYLISTIC Q572

For work use, Microsoft Word and Excel programs pre-installed on the device are adequate for preparing short documents.

Steph Mundell

LIFEBOOK UH574

The Fujitsu LifeBook UH574 allowed for great mobility without being obnoxiously heavy or clunky. Its twelve hours of battery life did not disappoint.

Andrew Mitsi

STYLISTIC Q702

The screen was particularly good. It is bright and visible from most angles, however heat is an issue, particularly around the Windows button on the front, and on the back where the battery housing is located.

Simon Harriott

STYLISTIC Q702

My first impression after unboxing the Q702 is that it is a nice looking unit. Styling is somewhat minimalist but very effective. The tablet part, once detached, has a nice weight, and no buttons or switches are located in awkward or intrusive positions.

Latest News Articles

Resources

Best Deals on GoodGearGuide

Latest Jobs

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?