Unit VI Programming Structure of PHP
Unit VI Programming Structure of PHP
PHP Introduction
PHP scripts are executed on the server.
HTML
CSS
JavaScript
If you want to study these subjects first, find the tutorials on our Home page.
What is PHP?
PHP is an acronym for "PHP: Hypertext Preprocessor"
PHP is a widely-used, open source scripting language
PHP scripts are executed on the server
PHP is free to download and use
1|Page NKS
BKC Unit VI: Programming Structure of PHP
With PHP you are not limited to output HTML. You can output images, PDF files, and
even Flash movies. You can also output any text, such as XHTML and XML.
Why PHP?
PHP runs on various platforms (Windows, Linux, Unix, Mac OS X, etc.)
PHP is compatible with almost all servers used today (Apache, IIS, etc.)
PHP supports a wide range of databases
PHP is free. Download it from the official PHP resource: www.php.net
PHP is easy to learn and runs efficiently on the server side
PHP is a server scripting language, and a powerful tool for making dynamic and
interactive Web pages.
<!DOCTYPE html>
<html>
<body>
<?php
echo "My first PHP script!";
?>
</body>
</html>
2|Page NKS
BKC Unit VI: Programming Structure of PHP
PHP 5 Installation
What Do I Need?
To start using PHP, you can:
Just create some .php files, place them in your web directory, and the server will
automatically parse them for you.
PHP 5 Syntax
The PHP script is executed on the server, and the plain HTML result is sent back to the
browser.
3|Page NKS
BKC Unit VI: Programming Structure of PHP
<?php
// PHP code goes here
?>
A PHP file normally contains HTML tags, and some PHP scripting code.
Below, we have an example of a simple PHP file, with a PHP script that uses a built-in
PHP function "echo" to output the text "Hello World!" on a web page:
<!DOCTYPE html>
<html>
<body>
<?php
echo "Hello World!";
?>
</body>
</html>
Comments in PHP
A comment in PHP code is a line that is not read/executed as part of the program. Its
only purpose is to be read by someone who is looking at the code.
<!DOCTYPE html>
<html>
<body>
4|Page NKS
BKC Unit VI: Programming Structure of PHP
<?php
// This is a single-line comment
/*
This is a multiple-lines comment block
that spans over multiple
lines
*/
// You can also use comments to leave out parts of a code line
$x = 5 /* + 15 */ + 5;
echo $x;
?>
</body>
</html>
In the example below, all three echo statements below are legal (and equal):
<!DOCTYPE html>
<html>
<body>
<?php
ECHO "Hello World!<br>";
echo "Hello World!<br>";
EcHo "Hello World!<br>";
?>
</body>
</html>
In the example below, only the first statement will display the value of the $color
variable (this is because $color, $COLOR, and $coLOR are treated as three different
variables):
<!DOCTYPE html>
<html>
<body>
5|Page NKS
BKC Unit VI: Programming Structure of PHP
<?php
$color = "red";
echo "My car is " . $color . "<br>";
echo "My house is " . $COLOR . "<br>";
echo "My boat is " . $coLOR . "<br>";
?>
</body>
</html>
PHP 5 Variables
Variables are "containers" for storing information.
<!DOCTYPE html>
<html>
<body>
<?php
$txt = "Hello world!";
$x = 5;
$y = 10.5;
echo $txt;
echo "<br>";
echo $x;
echo "<br>";
echo $y;
?>
</body>
</html>
After the execution of the statements above, the variable $txt will hold the value Hello
world!, the variable $x will hold the value 5, and the variable $y will hold the
value 10.5.
Note: When you assign a text value to a variable, put quotes around the value.
6|Page NKS
BKC Unit VI: Programming Structure of PHP
Note: Unlike other programming languages, PHP has no command for declaring a
variable. It is created the moment you first assign a value to it.
PHP Variables
A variable can have a short name (like x and y) or a more descriptive name (age,
carname, total_volume).
A variable starts with the $ sign, followed by the name of the variable
A variable name must start with a letter or the underscore character
A variable name cannot start with a number
A variable name can only contain alpha-numeric characters and underscores (A-
z, 0-9, and _ )
Variable names are case-sensitive ($age and $AGE are two different variables)
Output Variables
The PHP echo statement is often used to output data to the screen.
The following example will show how to output text and a variable:
<!DOCTYPE html>
<html>
<body>
<?php
$txt = "W3Schools.com";
echo "I love $txt!";
?>
7|Page NKS
BKC Unit VI: Programming Structure of PHP
</body>
</html>
The following example will produce the same output as the example above:
<!DOCTYPE html>
<html>
<body>
<?php
$txt = "W3Schools.com";
echo "I love " . $txt . "!";
?>
</body>
</html>
<!DOCTYPE html>
<html>
<body>
<?php
$x = 5;
$y = 4;
echo $x + $y;
?>
</body>
</html>
Note: You will learn more about the echo statement and how to output data to the
screen in the next chapter.
PHP automatically converts the variable to the correct data type, depending on its
value.
In other languages such as C, C++, and Java, the programmer must declare the name
and type of the variable before using it.
8|Page NKS
BKC Unit VI: Programming Structure of PHP
The scope of a variable is the part of the script where the variable can be
referenced/used.
local
global
static
<?php
$x = 5; // global scope
function myTest() {
// using x inside this function will generate an error
echo "<p>Variable x inside function is: $x</p>";
}
myTest();
A variable declared within a function has a LOCAL SCOPE and can only be accessed
within that function:
<?php
function myTest() {
$x = 5; // local scope
echo "<p>Variable x inside function is: $x</p>";
}
myTest();
9|Page NKS
BKC Unit VI: Programming Structure of PHP
You can have local variables with the same name in different functions, because local variables
recognized by the function in which they are declared.
To do this, use the global keyword before the variables (inside the function):
<!DOCTYPE html>
<html>
<body>
<?php
$x = 5;
$y = 10;
function myTest() {
global $x, $y;
$y = $x + $y;
}
</body>
</html>
PHP also stores all global variables in an array called $GLOBALS[index]. The index holds
the name of the variable. This array is also accessible from within functions and can be
used to update global variables directly.
<!DOCTYPE html>
<html>
<body>
<?php
$x = 5;
$y = 10;
10 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
function myTest() {
$GLOBALS['y'] = $GLOBALS['x'] + $GLOBALS['y'];
}
myTest();
echo $y;
?>
</body>
</html>
To do this, use the static keyword when you first declare the variable:
<!DOCTYPE html>
<html>
<body>
<?php
function myTest() {
static $x = 0;
echo $x;
$x++;
}
myTest();
echo "<br>";
myTest();
echo "<br>";
myTest();
echo "<br>";
myTest();
echo "<br>";
myTest();
?>
</body>
</html>
Then, each time the function is called, that variable will still have the information it
contained from the last time the function was called.
11 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
In this tutorial we use echo (and print) in almost every example. So, this chapter
contains a little more info about those two output statements.
The differences are small: echo has no return value while print has a return value of 1
so it can be used in expressions. echo can take multiple parameters (although such
usage is rare) while print can take one argument. echo is marginally faster than print.
Display Text
The following example shows how to output text with the echo command (notice that
the text can contain HTML markup):
Example
<!DOCTYPE html>
<html>
<body>
<?php
echo "<h2>PHP is Fun!</h2>";
echo "Hello world!<br>";
echo "I'm about to learn PHP!<br>";
echo "This ", "string ", "was ", "made ", "with multiple
parameters.";
?>
12 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
</body>
</html>
Display Variables
The following example shows how to output text and variables with the echo statement:
Example
<!DOCTYPE html>
<html>
<body>
<?php
$txt1 = "Learn PHP";
$txt2 = "W3Schools.com";
$x = 5;
$y = 4;
</body>
</html>
Display Text
The following example shows how to output text with the print command (notice that
the text can contain HTML markup):
Example
<!DOCTYPE html>
<html>
<body>
<?php
print "<h2>PHP is Fun!</h2>";
print "Hello world!<br>";
print "I'm about to learn PHP!";
13 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
?>
</body>
</html>
Display Variables
The following example shows how to output text and variables with the print statement:
Example
<!DOCTYPE html>
<html>
<body>
<?php
$txt1 = "Learn PHP";
$txt2 = "W3Schools.com";
$x = 5;
$y = 4;
</body>
</html>
String
Integer
Float (floating point numbers - also called double)
Boolean
Array
Object
NULL
Resource
14 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
PHP String
A string is a sequence of characters, like "Hello world!".
A string can be any text inside quotes. You can use single or double quotes:
Example
<?php
$x = "Hello world!";
$y = 'Hello world!';
echo $x;
echo "<br>";
echo $y;
?>
Run example »
PHP Integer
An integer is a whole number (without decimals). It is a number between -
2,147,483,648 and +2,147,483,647.
In the following example $x is an integer. The PHP var_dump() function returns the
data type and value:
Example
<?php
$x = 5985;
var_dump($x);
?>
15 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Run example »
PHP Float
A float (floating point number) is a number with a decimal point or a number in
exponential form.
In the following example $x is a float. The PHP var_dump() function returns the data
type and value:
Example
<?php
$x = 10.365;
var_dump($x);
?>
Run example »
PHP Boolean
A Boolean represents two possible states: TRUE or FALSE.
$x = true;
$y = false;
Booleans are often used in conditional testing. You will learn more about conditional
testing in a later chapter of this tutorial.
PHP Array
An array stores multiple values in one single variable.
In the following example $cars is an array. The PHP var_dump() function returns the
data type and value:
16 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Example
<?php
$cars = array("Volvo","BMW","Toyota");
var_dump($cars);
?>
Run example »
You will learn a lot more about arrays in later chapters of this tutorial.
PHP Object
An object is a data type which stores data and information on how to process that data.
First we must declare a class of object. For this, we use the class keyword. A class is a
structure that can contain properties and methods:
Example
<?php
class Car {
function Car() {
$this->model = "VW";
}
}
// create an object
$herbie = new Car();
Run example »
You will learn more about objects in a later chapter of this tutorial.
17 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
The NULL value identifies whether a variable is empty or not. Also useful to differentiate
between the empty string and null values of databases.
Example
<?php
$x = "Hello world!";
$x = null;
var_dump($x);
?>
Run example »
The example below returns the length of the string "Hello world!":
Example
<?php
echo strlen("Hello world!");
?>
18 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Run example »
If a match is found, it will return the character position of the first match. If no match is
found, it will return FALSE.
The example below searches for the text "world" in the string "Hello world!":
Example
<?php
echo strpos("Hello world!", "world");
?>
Run example »
Function Description
19 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
20 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
21 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
22 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
23 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
24 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
25 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
PHP 5 Constants
Constants are like variables except that once they are defined they cannot be changed
or undefined.
PHP Constants
A constant is an identifier (name) for a simple value. The value cannot be changed
during the script.
A valid constant name starts with a letter or underscore (no $ sign before the constant
name).
Note: Unlike variables, constants are automatically global across the entire script.
26 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Syntax
define(name, value, case-insensitive)
Parameters:
Example
<?php
define("GREETING", "Welcome to W3Schools.com!");
echo GREETING;
?>
Run example »
Example
<?php
define("GREETING", "Welcome to W3Schools.com!", true);
echo greeting;
?>
Run example »
The example below uses a constant inside a function, even if it is defined outside the
function:
27 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Example
<?php
define("GREETING", "Welcome to W3Schools.com!");
function myTest() {
echo GREETING;
}
myTest();
?>
PHP 5 Operators
This chapter shows the different operators that can be used in PHP scripts.
28 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
The basic assignment operator in PHP is "=". It means that the left operand gets set to
the value of the assignment expression on the right.
x=y x=y The left operand gets set to the value of the
expression on the right
x += y x=x+y Addition
x -= y x=x-y Subtraction
x *= y x=x*y Multiplication
x /= y x=x/y Division
x %= y x=x%y Modulus
29 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
The example below shows the results of using the string operators:
Example
<?php
$a = "Hello";
$b = $a . " world!";
echo $b; // outputs Hello world!
$x = "Hello";
$x .= " world!";
echo $x; // outputs Hello world!
?>
Run example »
The example below shows the different results of using the different
increment/decrement operators:
Example
<?php
$x = 10;
echo ++$x; // outputs 11
$y = 10;
echo $y++; // outputs 10
$z = 5;
30 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
$i = 5;
echo $i--; // outputs 5
?>
Run example »
!== Not identical $x !== $y True if $x is not equal to $y, or they are
not of the same type
The example below shows the different results of using some of the comparison
operators:
31 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Example
<?php
$x = 100;
$y = "100";
var_dump($x == $y);
echo "<br>";
var_dump($x === $y);
echo "<br>";
var_dump($x != $y);
echo "<br>";
var_dump($x !== $y);
echo "<br>";
$a = 50;
$b = 90;
Run example »
32 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
=== Identity $x === True if $x and $y have the same key/value pairs in
$y the same order and of the same types
The example below shows the different results of using the different array operators:
Example
<?php
$x = array("a" => "red", "b" => "green");
$y = array("c" => "blue", "d" => "yellow");
$z = $x + $y; // union of $x and $y
var_dump($z);
var_dump($x == $y);
var_dump($x === $y);
var_dump($x != $y);
var_dump($x <> $y);
var_dump($x !== $y);
?>
33 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Syntax
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:
Example
<?php
$t = date("H");
Run example »
34 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Syntax
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:
Example
<?php
$t = date("H");
Run example »
Syntax
if (condition) {
code to be executed if condition is true;
} elseif (condition) {
code to be executed if condition is true;
35 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
} else {
code to be executed if condition is 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!":
Example
<?php
$t = date("H");
Run example »
Syntax
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;
}
36 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
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.
Example
<?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, or green!";
}
?>
PHP Loops
Often when you write code, you want the same block of code to run over and over
again in a row. Instead of adding several almost equal code-lines in a script, we can use
loops to perform a task like this.
while - loops through a block of code as long as the specified condition is true
do...while - loops through a block of code once, and then repeats the loop as
long as the specified condition is true
for - loops through a block of code a specified number of times
foreach - loops through a block of code for each element in an array
37 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
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++;
}
?>
Run example »
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:
38 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Example
<?php
$x = 1;
do {
echo "The number is: $x <br>";
$x++;
} while ($x <= 5);
?>
Notice that in a do while loop the condition is tested AFTER executing the statements
within the loop. This means that the do while loop would execute its statements at least
once, even if the condition is false the first time.
The example below sets the $x variable to 6, then it runs the loop, and then the
condition is checked:
Example
<?php
$x = 6;
do {
echo "The number is: $x <br>";
$x++;
} while ($x<=5);
?>
Syntax
for (init counter; test counter; increment counter) {
code to be executed;
}
Parameters:
39 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
test counter: Evaluated for each loop iteration. If it evaluates to TRUE, the loop
continues. If it evaluates to FALSE, the loop ends.
increment counter: Increases the loop counter value
Example
<?php
for ($x = 0; $x <= 10; $x++) {
echo "The number is: $x <br>";
}
?>
Run example »
Syntax
foreach ($array as $value) {
code to be executed;
}
For every loop iteration, the value of the current array element is assigned to $value
and the array pointer is moved by one, until it reaches the last array element.
The following example demonstrates a loop that will output the values of the given
array ($colors):
Example
<?php
$colors = array("red", "green", "blue", "yellow");
40 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
PHP 5 Functions
The real power of PHP comes from its functions; it has more than 1000 built-in
functions.
Syntax
function functionName() {
code to be executed;
}
Note: A function name can start with a letter or underscore (not a number).
Tip: Give the function a name that reflects what the function does!
In the example below, we create a function named "writeMsg()". The opening curly
brace ( { ) indicates the beginning of the function code and the closing curly brace ( } )
indicates the end of the function. The function outputs "Hello world!". To call the
function, just write its name:
Example
<?php
function writeMsg() {
41 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Run example »
Arguments are specified after the function name, inside the parentheses. You can add
as many arguments as you want, just seperate them with a comma.
The following example has a function with one argument ($fname). When the
familyName() function is called, we also pass along a name (e.g. Jani), and the name is
used inside the function, which outputs several different first names, but an equal last
name:
Example
<?php
function familyName($fname) {
echo "$fname Refsnes.<br>";
}
familyName("Jani");
familyName("Hege");
familyName("Stale");
familyName("Kai Jim");
familyName("Borge");
?>
Run example »
The following example has a function with two arguments ($fname and $year):
Example
<?php
function familyName($fname, $year) {
42 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
familyName("Hege", "1975");
familyName("Stale", "1978");
familyName("Kai Jim", "1983");
?>
Run example »
Example
<?php
function setHeight($minheight = 50) {
echo "The height is : $minheight <br>";
}
setHeight(350);
setHeight(); // will use the default value of 50
setHeight(135);
setHeight(80);
?>
Run example »
Example
<?php
function sum($x, $y) {
$z = $x + $y;
return $z;
43 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
PHP 5 Arrays
An array stores multiple values in one single variable:
Example
<?php
$cars = array("Volvo", "BMW", "Toyota");
echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . ".";
?>
Run example »
What is an Array?
An array is a special variable, which can hold more than one value at a time.
If you have a list of items (a list of car names, for example), storing the cars in single
variables could look like this:
$cars1 = "Volvo";
$cars2 = "BMW";
$cars3 = "Toyota";
However, what if you want to loop through the cars and find a specific one? And what if
you had not 3 cars, but 300?
An array can hold many values under a single name, and you can access the values by
referring to an index number.
44 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
array();
The index can be assigned automatically (index always starts at 0), like this:
$cars[0] = "Volvo";
$cars[1] = "BMW";
$cars[2] = "Toyota";
The following example creates an indexed array named $cars, assigns three elements
to it, and then prints a text containing the array values:
Example
<?php
$cars = array("Volvo", "BMW", "Toyota");
echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . ".";
?>
Run example »
Example
<?php
$cars = array("Volvo", "BMW", "Toyota");
45 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
echo count($cars);
?>
Run example »
Example
<?php
$cars = array("Volvo", "BMW", "Toyota");
$arrlength = count($cars);
Run example »
or:
$age['Peter'] = "35";
$age['Ben'] = "37";
$age['Joe'] = "43";
46 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Example
<?php
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
echo "Peter is " . $age['Peter'] . " years old.";
?>
Example
<?php
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
Installation
The array functions are part of the PHP core. There is no installation needed to use
these functions.
47 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
array_column() Returns the values from a single column in the input array
48 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
49 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
array_replace() Replaces the values of the first array with the values from
following arrays
array_replace_recursive() Replaces the values of the first array with the values from
following arrays recursively
array_search() Searches an array for a given value and returns the key
array_shift() Removes the first element from an array, and returns the
value of the removed element
50 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
each() Returns the current key and value pair from an array
51 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
52 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Example
<?php
$cars = array("Volvo", "BMW", "Toyota");
sort($cars);
?>
Run example »
The following example sorts the elements of the $numbers array in ascending
numerical order:
Example
<?php
$numbers = array(4, 6, 2, 22, 11);
sort($numbers);
?>
Run example »
53 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Example
<?php
$cars = array("Volvo", "BMW", "Toyota");
rsort($cars);
?>
Run example »
The following example sorts the elements of the $numbers array in descending
numerical order:
Example
<?php
$numbers = array(4, 6, 2, 22, 11);
rsort($numbers);
?>
Run example »
Example
<?php
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
asort($age);
?>
54 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Run example »
Example
<?php
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
ksort($age);
?>
Run example »
Example
<?php
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
arsort($age);
?>
Run example »
55 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Example
<?php
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
krsort($age);
?>
$GLOBALS
$_SERVER
$_REQUEST
$_POST
$_GET
$_FILES
$_ENV
$_COOKIE
$_SESSION
This chapter will explain some of the superglobals, and the rest will be explained in
later chapters.
PHP $GLOBALS
$GLOBALS is a PHP super global variable which is used to access global variables from
anywhere in the PHP script (also from within functions or methods).
PHP stores all global variables in an array called $GLOBALS[index]. The index holds the
name of the variable.
56 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
The example below shows how to use the super global variable $GLOBALS:
Example
<?php
$x = 75;
$y = 25;
function addition() {
$GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
}
addition();
echo $z;
?>
Run example »
In the example above, since z is a variable present within the $GLOBALS array, it is
also accessible from outside the function!
PHP $_SERVER
$_SERVER is a PHP super global variable which holds information about headers, paths,
and script locations.
The example below shows how to use some of the elements in $_SERVER:
Example
<?php
echo $_SERVER['PHP_SELF'];
echo "<br>";
echo $_SERVER['SERVER_NAME'];
echo "<br>";
echo $_SERVER['HTTP_HOST'];
echo "<br>";
echo $_SERVER['HTTP_REFERER'];
echo "<br>";
echo $_SERVER['HTTP_USER_AGENT'];
echo "<br>";
echo $_SERVER['SCRIPT_NAME'];
?>
Run example »
57 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
The following table lists the most important elements that can go inside $_SERVER:
Element/Code Description
$_SERVER['SERVER_PROTOCOL'] Returns the name and revision of the information protocol (su
HTTP/1.1)
$_SERVER['REQUEST_METHOD'] Returns the request method used to access the page (such as
$_SERVER['QUERY_STRING'] Returns the query string if the page is accessed via a query st
$_SERVER['HTTP_REFERER'] Returns the complete URL of the current page (not reliable be
user-agents support it)
$_SERVER['REMOTE_ADDR'] Returns the IP address from where the user is viewing the cur
$_SERVER['REMOTE_HOST'] Returns the Host name from where the user is viewing the cu
58 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
$_SERVER['REMOTE_PORT'] Returns the port being used on the user's machine to commun
the web server
$_SERVER['SERVER_PORT'] Returns the port on the server machine being used by the we
communication (such as 80)
$_SERVER['SERVER_SIGNATURE'] Returns the server version and virtual host name which are ad
server-generated pages
$_SERVER['PATH_TRANSLATED'] Returns the file system based path to the current script
PHP $_REQUEST
PHP $_REQUEST is used to collect data after submitting an HTML form.
The example below shows a form with an input field and a submit button. When a user
submits the data by clicking on "Submit", the form data is sent to the file specified in
the action attribute of the <form> tag. In this example, we point to this file itself for
processing form data. If you wish to use another PHP file to process form data, replace
that with the filename of your choice. Then, we can use the super global variable
$_REQUEST to collect the value of the input field:
Example
<html>
<body>
59 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// collect value of input field
$name = $_REQUEST['fname'];
if (empty($name)) {
echo "Name is empty";
} else {
echo $name;
}
}
?>
</body>
</html>
Run example »
PHP $_POST
PHP $_POST is widely used to collect form data after submitting an HTML form with
method="post". $_POST is also widely used to pass variables.
The example below shows a form with an input field and a submit button. When a user
submits the data by clicking on "Submit", the form data is sent to the file specified in
the action attribute of the <form> tag. In this example, we point to the file itself for
processing form data. If you wish to use another PHP file to process form data, replace
that with the filename of your choice. Then, we can use the super global variable
$_POST to collect the value of the input field:
Example
<html>
<body>
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// collect value of input field
$name = $_POST['fname'];
60 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
if (empty($name)) {
echo "Name is empty";
} else {
echo $name;
}
}
?>
</body>
</html>
Run example »
PHP $_GET
PHP $_GET can also be used to collect form data after submitting an HTML form with
method="get".
<html>
<body>
</body>
</html>
When a user clicks on the link "Test $GET", the parameters "subject" and "web" is sent
to "test_get.php", and you can then acces their values in "test_get.php" with $_GET.
Example
<html>
<body>
<?php
echo "Study " . $_GET['subject'] . " at " . $_GET['web'];
?>
61 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
</body>
</html>
Run example »
$GLOBALS
$_SERVER
$_REQUEST
$_POST
$_GET
$_FILES
$_ENV
$_COOKIE
$_SESSION
This chapter will explain some of the superglobals, and the rest will be explained in
later chapters.
PHP $GLOBALS
$GLOBALS is a PHP super global variable which is used to access global variables from
anywhere in the PHP script (also from within functions or methods).
PHP stores all global variables in an array called $GLOBALS[index]. The index holds the
name of the variable.
The example below shows how to use the super global variable $GLOBALS:
Example
<?php
$x = 75;
$y = 25;
function addition() {
$GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
}
62 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
addition();
echo $z;
?>
Run example »
In the example above, since z is a variable present within the $GLOBALS array, it is
also accessible from outside the function!
PHP $_SERVER
$_SERVER is a PHP super global variable which holds information about headers, paths,
and script locations.
The example below shows how to use some of the elements in $_SERVER:
Example
<?php
echo $_SERVER['PHP_SELF'];
echo "<br>";
echo $_SERVER['SERVER_NAME'];
echo "<br>";
echo $_SERVER['HTTP_HOST'];
echo "<br>";
echo $_SERVER['HTTP_REFERER'];
echo "<br>";
echo $_SERVER['HTTP_USER_AGENT'];
echo "<br>";
echo $_SERVER['SCRIPT_NAME'];
?>
Run example »
The following table lists the most important elements that can go inside $_SERVER:
Element/Code Description
63 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
$_SERVER['REQUEST_MET Returns the request method used to access the page (such as
HOD'] POST)
$_SERVER['QUERY_STRIN Returns the query string if the page is accessed via a query
G'] string
$_SERVER['HTTP_REFERE Returns the complete URL of the current page (not reliable
R'] because not all user-agents support it)
$_SERVER['REMOTE_ADD Returns the IP address from where the user is viewing the
R'] current page
64 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
$_SERVER['REMOTE_HOS Returns the Host name from where the user is viewing the
T'] current page
$_SERVER['SERVER_PORT Returns the port on the server machine being used by the web
'] server for communication (such as 80)
$_SERVER['SERVER_SIGN Returns the server version and virtual host name which are
ATURE'] added to server-generated pages
$_SERVER['PATH_TRANSL Returns the file system based path to the current script
ATED']
PHP $_REQUEST
PHP $_REQUEST is used to collect data after submitting an HTML form.
The example below shows a form with an input field and a submit button. When a user
submits the data by clicking on "Submit", the form data is sent to the file specified in
the action attribute of the <form> tag. In this example, we point to this file itself for
processing form data. If you wish to use another PHP file to process form data, replace
that with the filename of your choice. Then, we can use the super global variable
$_REQUEST to collect the value of the input field:
65 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
Example
<html>
<body>
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// collect value of input field
$name = $_REQUEST['fname'];
if (empty($name)) {
echo "Name is empty";
} else {
echo $name;
}
}
?>
</body>
</html>
PHP $_POST
PHP $_POST is widely used to collect form data after submitting an HTML form with
method="post". $_POST is also widely used to pass variables.
The example below shows a form with an input field and a submit button. When a user
submits the data by clicking on "Submit", the form data is sent to the file specified in
the action attribute of the <form> tag. In this example, we point to the file itself for
processing form data. If you wish to use another PHP file to process form data, replace
that with the filename of your choice. Then, we can use the super global variable
$_POST to collect the value of the input field:
Example
<html>
<body>
66 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// collect value of input field
$name = $_POST['fname'];
if (empty($name)) {
echo "Name is empty";
} else {
echo $name;
}
}
?>
</body>
</html>
Run example »
PHP $_GET
PHP $_GET can also be used to collect form data after submitting an HTML form with
method="get".
<html>
<body>
</body>
</html>
When a user clicks on the link "Test $GET", the parameters "subject" and "web" is sent
to "test_get.php", and you can then acces their values in "test_get.php" with $_GET.
Example
<html>
<body>
67 | P a g e NKS
BKC Unit VI: Programming Structure of PHP
<?php
echo "Study " . $_GET['subject'] . " at " . $_GET['web'];
?>
</body>
</html>
68 | P a g e NKS