Skip to main content

PHP Control Flow (while)

While

            The  while function is the simplest of all the iterative control statements.  The statement list within a while statement is repeated as long as the condition evaluated has not been met.  The statement list within the while code body can consist of one or more statements.

while (expression) 
{
    -- statements that execute while the expression evaluates false
}

It is a best practice to build error detecting logic into any iterative control statement.  This error control logic should be built in such a way as to detect an infinite loop. In the following example, simple logic has been built into a while function to detect an infinite loop error:




<?php
    $i = 5;
    while ($i < 5) {
        echo '$i <br>';
        $i = $i++;
        if ($i > 20000) { // Break when > 20,000 repititions
            break;
        }
    }
?>

Do ... While

     The do ... while function is based on the while iterative control statement with the difference being the condition is evaluated at the end of the statement execution versus at the beginning.  The statement list within a do ... while function is repeated as long as the condition evaluated has not been met.  The statement list within the do ... while code body can consist of one or more statements.


do {
    -- statements that execute while the expression evaluates false
       and then it iterates through the statements one more time
} while (expression);

A do ... while statement will always be guaranteed to run through the statements contained at least once.  The following example demonstrates how a do ... while statement works:











<?php
    $i = 10;
    do {
        echo $i * $i;
        $i = $i+;
    } while ($i < 5);

/* The number 100 will be displayed, even though 10 is not less than
5. If this was a while statement, the statements would not have run
at all */
?>


Comments

Popular posts from this blog

PHP INTRODUCTION

                     PHP  (recursive acronym for  PHP: Hypertext Preprocessor ) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. PHP stands for  P HP:  H ypertext  P reprocessor PHP is a server-side scripting language, like ASP PHP scripts are executed on the server PHP supports many databases (MySQL, Informix, Oracle, Sybase, Solid, PostgreSQL, Generic ODBC, etc.) PHP is an open source software PHP is free to download and use Why PHP? PHP runs on different platforms (Windows, Linux, Unix, etc.) PHP is compatible with almost all servers used today (Apache, IIS, etc.) PHP is FREE to download from the official PHP resource:  www.php.net PHP is easy to learn and runs efficiently on the server side What can PHP do? Anything. PHP is mainly focused on server-side scripting, so you can...

SQL Joins

1. Login in to the mysql client using the login name and password provided by your instructor (if not already logged in). 2. View the existing databases that the MySQL Server is maintaining. SHOW DATABASES; 3. Utilize the photo_album database. USE photo_album; ---- If Need be, recreate the database and load the SQL data in that will be used for this lab CREATE DATABASE photo_album; SOURCE /tmp/photo_album.sql; 4. Query the database to display the active primary customer (email, first and last name) and all the associated active login names associated with that customer. SELECT customers.email_customer, customers.fname, customers.lname, logins.login_name  FROM customers, logins WHERE customers.email_customer = logins.email_customer  AND customers.active_customer = 'True'  AND logins.active_login = 'True';

Self Joins

A table name is always ambiguous when table is joined to itself using a self-join. For example, the Country table in the world database contains an IndepYear column indicating the year in which each country achieved independence. To find all countries that have the same year of independence as some given country, a self-join can be used. However, the query cannot be written like this: mysql> SELECT IndepYear, Name, Name -> FROM Country JOIN Country -> ON IndepYear = IndepYear AND Name = 'Qatar'; ERROR 1066 (42000): Not unique table/alias: 'Country' Furthermore, the ambiguity cannot be removed from column references by preceding them with table name qualifiers because the names remain identical: mysql> SELECT Country.IndepYear, Country.Name, Country.Name -> FROM Country JOIN Country -> ON Country.IndepYear = Country.IndepYear -> AND Country.Name = 'Qatar'; ERROR 1066 (42000): Not unique table/alias: 'Country' It ...