PHP Basics

From TRCCompSci - AQA Computer Science
Revision as of 20:39, 30 December 2016 by Admin (talk | contribs) (PHP Repetition)
Jump to: navigation, search

This section needs expansion.
You can help by adding to it.

PHP is a server side scripting language, which is run on the server before the page is served to the client. Essentially it dynamically creates pages on the fly. It can be written on it's own our within normal standard HTML etc. It must be stored on a running webserver and you can only access it via it's URL in a browser. The page the client will receive will have all of the server side elements replaced with the output of the code. If your viewed source you would only see standard HTML and text.

PHP Tags

PHP code must be contained within PHP tags, these tags can be placed anywhere in the page because they are all run before the page is served to the client.

1 <?php // the opening PHP tag
2 // your PHP code
3 ?> // the closing PHP tag

Within your PHP tags every line must be terminated with a semi colon.

PHP Comments

Like all languages PHP supports comments, these can greatly help the maintenance of a project because the developer / programmer may not be the person who maintains the project when it is live. The comments are exactly the same as in C#:

1 // This will comment a single line or include a comment at the end of that single line

Alternatively:

1 /*
2 This will comment all lines
3 between the start and
4 the end comment marks
5 */

Creating a Hello World in PHP

<syntaxhighlight lang="php" line> <?php echo "hello world"; ?>

hello world

echo is used to write text to the page, you could also echo html code or variables:

1 <?php echo "<p>Hello World<br>Hola Mundo</p>"; ?>

1 <p>Hello World<br>Hola Mundo</p>

Hello World
Hola Mundo

You could also do this:

 1 <html>
 2 <head> <title> Hello World </title> </head>
 3 <body>
 4 <p>
 5 <?php echo "Hello World"; ?>
 6 <br>
 7 <?php echo "Hola Mundo"; ?>
 8 </p>
 9 </body>
10 </html>

 1 <html>
 2 <head> <title> Hello World </title> </head>
 3 <body>
 4 <p>
 5 Hello World
 6 <br>
 7 Hola Mundo
 8 </p>
 9 </body>
10 </html>

Hello World
Hola Mundo

PHP Variables

In PHP you don't declare variables before they are used, instead you just assign it a value and PHP will automatically convert it to the correct data type in the background. All variables in PHP start with the dollar sign ($) followed by the name of the variable. The name must start with a letter, and can only contain alpha-numeric characters and underscore. Variables are also case sensitive.

1 <?php 
2 $name = "wayne";
3 $age = 21;
4 $alive = true; 
5 ?>

The above example creates 3 different variables, notice that you don't need to declare the data types.

1 <?php 
2 $message = "<p> Hello World <br> Hola Mundo </p>"; 
3 echo $message; 
4 ?>

You can join together text using a period . :

1 <?php 
2 $message = "Hello World"; 
3 echo "<p>".$message."</p>; 
4 ?>

Calculations can be performed as normal but PHP will dynamically alter data types to suit. so this:

1 <?php 
2 $number = 5;
3 $text = "5" 
4 echo $number + $text; 
5 ?>

will produce the output 10.

It is also important to note that variables inside double quotes will be displayed as their value, while variables in single quotes will only produce what you wrote. For example:

1 <?php 
2 $a = "Hello";
3 echo "$a<br>" . '$a';
4 ?>
5 //Output:
6 //Hello
7 //$a

PHP Constants

Constants are like variables however once they are declared they cannot be changes or undefined. The name of a constant must start with either an underscore or letter.

1 <?php 
2 define (Message, "<p> Hello World <br> Hola Mundo </p>"); 
3 echo Message; 
4 ?>

You can also include another parameter (true) to make the constant insensitive to the case:

1 <?php 
2 define (Message, "<p> Hello World <br> Hola Mundo </p>", true); 
3 echo mESSAGE; 
4 ?>

PHP Operators

Comparison Operators

Operation Character used Description Example
Equal Performed using == Returns true if both inputs are the same. value == "test"
Not Equal performed using != returns true if both inputs are not the same value != "test"
Less Than Performed using < Returns true if value 1 is less than or equal to value 2. value < 0
Greater Than performed using > Returns true if value 1 is greater than value 2. value > 1
Less Than or Equal Performed using <= Returns true if value 1 is less than or equal to value 2. value <= 0
Greater Than or Equal performed using >= Returns true if value 1 is greater than or equal to value 2. value >= 1
AND Performed using "&" or "&&" Returns true if both inputs are true. true && false = false
OR performed using "|" or "||" returns true if one or both inputs are true. true || false = true
NOT performed using "!" Returns false if true, or true if false. !true = false

PHP Selection

If

The if statement executes some code if one condition is true:

if (condition) {
    code to be executed if condition is true;
}


The example below will output "Have a good day!" if the current time (HOUR) is less than 20:

<?php
$t = date("H");

if ($t < "20") {
    echo "Have a good day!";
}
?>


Else

The if....else statement executes some code if a condition is true and another code if that condition is false.

if (condition) {
    code to be executed if condition is true;
} else {
    code to be executed if condition is false;
}

The example below will output "Have a good day!" if the current time is less than 20, and "Have a good night!" otherwise:

<?php
$t = date("H");

if ($t < "20") {
    echo "Have a good day!";
} else {
    echo "Have a good night!";
}
?>


ElseIf

The if....elseif...else statement executes different codes for more than two conditions.

if (condition) {
    code to be executed if this condition is true;
} elseif (condition) {
    code to be executed if this condition is true;
} else {
    code to be executed if all conditions are false;
}

The example below will output "Have a good morning!" if the current time is less than 10, and "Have a good day!" if the current time is less than 20. Otherwise it will output "Have a good night!":

<?php
$t = date("H");

if ($t < "10") {
    echo "Have a good morning!";
} elseif ($t < "20") {
    echo "Have a good day!";
} else {
    echo "Have a good night!";
}
?>


Switch Case

Use the switch statement to select one of many blocks of code to be executed.

switch (n) {
    case label1:
        code to be executed if n=label1;
        break;
    case label2:
        code to be executed if n=label2;
        break;
    case label3:
        code to be executed if n=label3;
        break;
    ...
    default:
        code to be executed if n is different from all labels;
}

This is how it works: First we have a single expression n (most often a variable), that is evaluated once. The value of the expression is then compared with the values for each case in the structure. If there is a match, the block of code associated with that case is executed. Use break to prevent the code from running into the next case automatically. The default statement is used if no match is found.

<?php
$favcolor = "red";

switch ($favcolor) {
    case "red":
        echo "Your favorite color is red!";
        break;
    case "blue":
        echo "Your favorite color is blue!";
        break;
    case "green":
        echo "Your favorite color is green!";
        break;
    default:
        echo "Your favorite color is neither red, blue, nor green!";
}
?>

PHP Repetition

while Loop

The while loop executes a block of code as long as the specified condition is true.

Syntax:

while (condition is true) {
    code to be executed;
}

The example below first sets a variable $x to 1 ($x = 1). Then, the while loop will continue to run as long as $x is less than, or equal to 5 ($x <= 5). $x will increase by 1 each time the loop runs ($x++_), Example:

<?php 
$x = 1; 

while($x <= 5) {
    echo "The number is: $x <br>";
    $x++;
} 
?>

do...while Loop

The do...while loop will always execute the block of code once, it will then check the condition, and repeat the loop while the specified condition is true.

Syntax:

do {
    code to be executed;
} while (condition is true);

The example below first sets a variable $x to 1 ($x = 1). Then, the do while loop will write some output, and then increment the variable $x with 1. Then the condition is checked (is $x less than, or equal to 5?), and the loop will continue to run as long as $x is less than, or equal to 5:

Example

<?php 
$x = 1; 

do {
    echo "The number is: $x <br>";
    $x++;
} while ($x <= 5);
?>

PHP Functions

PHP & Forms

PHP Other Commands