Page 3 of 3
It is always difficult to find example of the use of such basic facilities as if statements and loops because they really only come into their own when you have enough PHP to need them. However the task of generating an HTML table is a good and realistic use of a loop.
An HTML table, in case you have forgotten, is simply a set of rows and columns - i.e. it really is a table. To create a table you start off with a pair of <TABLE></TABLE> tags. Each row of the table corresponds to a pair of <TR></TR> tags and each cell within the row corresponds to a pair of <TD></TD> tags. For example:
creates a table with one row and two cells.
To make the rows and cells more obvious we can set the border attribute in the <TABLE> tag say <TABLE border=1>. With this change the table looks like:
Now imagine you need to create a table for some with a single row but a variable number of cells. The most natural way of doing this is to use a for loop. For example:
echo("<TD> Cell " . $i . "</TD>");
This first sends the table tags needed to start the first row to the web page. Then the for loop generates ten cells each suitably labeled using the index and finally the closing row and table tags are sent to the web page. The resulting HTML generated by the small program is:
<TD> Cell 1</TD>
<TD> Cell 2</TD>
<TD> Cell 3</TD>
<TD> Cell 9</TD>
<TD> Cell 10</TD>
notice that it isn't formatted to be easy to read but then HTML doesn't have to be and it still works.
When viewed in a browser the page looks like:
You can probably guess that it isn't difficult to write a loop that generates more than a single row. This is the power of PHP - it can generate HTML that would take you a long time to do by hand.
PHP Inner Functions And Closure
PHP inner functions and anonymous functions are a little strange to say the least. However, just because something is strange doesn't mean that it isn't useful. We take a close look at the way PHP fun [ ... ]
Object-oriented HTML Generation In PHP
PHP is a programming language specifically designed to generate HTML pages but one of the topics that is rarely discussed is exactly how to do this. In this article the idea that HTML generation shoul [ ... ]