What is PHP?
- PHP stands for PHP: Hypertext
Preprocessor
- 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
What is a PHP File?
- PHP files can contain text, HTML
tags and scripts
- PHP files are returned to the
browser as plain HTML
- PHP files have a file extension of
".php", ".php3", or ".phtml"
What is MySQL?
- MySQL is a database server
- MySQL is ideal for both small and
large applications
- MySQL supports standard SQL
- MySQL compiles on a number of
platforms
- MySQL is free to download and use
PHP + MySQL
- PHP combined with MySQL are
cross-platform (you can develop in Windows and serve on a Unix platform)
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
Where to Start?
To get
access to a web server with PHP support, you can:
- Install Apache (or IIS) on your
own server, install PHP, and MySQL
- Or find a web hosting plan with
PHP and MySQL support
PHP Variables
As with
algebra, PHP variables are used to hold values or expressions.
A
variable can have a short name, like x, or a more descriptive name, like
carName.
Rules for
PHP variable names:
- Variables in PHP starts with a $
sign, followed by the name of the variable
- The variable name must begin with
a letter or the underscore character
- A variable name can only contain
alpha-numeric characters and underscores (A-z, 0-9, and _ )
- A variable name should not contain
spaces
- Variable names are case sensitive
(y and Y are two different variables)
Creating (Declaring) PHP Variables
PHP has
no command for declaring a variable.
A
variable is created the moment you first assign a value to it:
$myCar="Volvo";
After the
execution of the statement above, the variable myCar will hold the value
Volvo.
Tip: If you want to create a variable without assigning it a value,
then you assign it the value of null.
Let's
create a variable containing a string, and a variable containing a number:
<?php
$txt="Hello World!";
$x=16;
?>
$txt="Hello World!";
$x=16;
?>
Note: When you assign a text value to a variable, put quotes around the
value.
PHP is a Loosely Typed Language
In PHP, a
variable does not need to be declared before adding a value to it.
In the
example above, notice that we did not have to tell PHP which data type the
variable is.
PHP
automatically converts the variable to the correct data type, depending on its
value.
In a
strongly typed programming language, you have to declare (define) the type and
name of the variable before using it.
PHP Variable Scope
The scope
of a variable is the portion of the script in which the variable can be
referenced.
PHP has
four different variable scopes:
- local
- global
- static
- parameter
Local Scope
A
variable declared within a PHP function is local and can only be
accessed within that function. (the variable has local scope):
<?php
$a = 5; // global scope
function myTest()
{
echo $a; // local scope
}
myTest();
?>
$a = 5; // global scope
function myTest()
{
echo $a; // local scope
}
myTest();
?>
The
script above will not produce any output because the echo statement refers to
the local scope variable $a, which has not been assigned a value within this
scope.
You can
have local variables with the same name in different functions, because local
variables are only recognized by the function in which they are declared.
Local
variables are deleted as soon as the function is completed.
Global Scope
Global
scope refers to any variable that is defined outside of any function.
Global
variables can be accessed from any part of the script that is not inside a
function.
To access
a global variable from within a function, use the global keyword:
<?php
$a = 5;
$b = 10;
function myTest()
{
global $a, $b;
$b = $a + $b;
}
myTest();
echo $b;
?>
$a = 5;
$b = 10;
function myTest()
{
global $a, $b;
$b = $a + $b;
}
myTest();
echo $b;
?>
The
script above will output 15.
PHP also
stores all global variables in an array called $GLOBALS[index]. Its
index is the name of the variable. This array is also accessible from within
functions and can be used to update global variables directly.
The
example above can be rewritten as this:
<?php
$a = 5;
$b = 10;
function myTest()
{
$GLOBALS['b'] = $GLOBALS['a'] + $GLOBALS['b'];
}
myTest();
echo $b;
?>
$a = 5;
$b = 10;
function myTest()
{
$GLOBALS['b'] = $GLOBALS['a'] + $GLOBALS['b'];
}
myTest();
echo $b;
?>
Static Scope
When a
function is completed, all of its variables are normally deleted. However,
sometimes you want a local variable to not be deleted.
To do
this, use the static keyword when you first declare the variable:
static $rememberMe;
Then,
each time the function is called, that variable will still have the information
it contained from the last time the function was called.
Note: The variable is still local to the function.
Parameters
A
parameter is a local variable whose value is passed to the function by the
calling code.
Parameters
are declared in a parameter list as part of the function declaration:
function myTest($para1,$para2,...)
{
// function code
}
{
// function code
}
String Variables in PHP
String
variables are used for values that contain characters.
In this
chapter we are going to look at the most common functions and operators used to
manipulate strings in PHP.
After we
create a string we can manipulate it. A string can be used directly in a
function or it can be stored in a variable.
Below,
the PHP script assigns the text "Hello World" to a string variable
called $txt:
<?php
$txt="Hello World";
echo $txt;
?>
$txt="Hello World";
echo $txt;
?>
The
output of the code above will be:
Hello World
Now, lets
try to use some different functions and operators to manipulate the string.
The Concatenation Operator
There is
only one string operator in PHP.
The
concatenation operator (.) is used to put two string values together.
To
concatenate two string variables together, use the concatenation operator:
<?php
$txt1="Hello World!";
$txt2="What a nice day!";
echo $txt1 . " " . $txt2;
?>
$txt1="Hello World!";
$txt2="What a nice day!";
echo $txt1 . " " . $txt2;
?>
The
output of the code above will be:
Hello World! What a nice
day!
If we
look at the code above you see that we used the concatenation operator two
times. This is because we had to insert a third string (a space character), to
separate the two strings.
The strlen() function
The
strlen() function is used to return the length of a string.
Let's
find the length of a string:
<?php
echo strlen("Hello world!");
?>
echo strlen("Hello world!");
?>
The
output of the code above will be:
12
The
length of a string is often used in loops or other functions, when it is
important to know when the string ends. (i.e. in a loop, we would want to stop
the loop after the last character in the string).
The strpos() function
The
strpos() function is used to search for a character/text within a string.
If a
match is found, this function will return the character position of the first
match. If no match is found, it will return FALSE.
Let's see
if we can find the string "world" in our string:
<?php
echo strpos("Hello world!","world");
?>
echo strpos("Hello world!","world");
?>
The
output of the code above will be:
6
Arithmetic Operators
The table
below lists the arithmetic operators in PHP:
|
Operator
|
Name
|
Description
|
Example
|
Result
|
|
x + y
|
Addition
|
Sum of x and y
|
2 + 2
|
4
|
|
x - y
|
Subtraction
|
Difference of x and y
|
5 - 2
|
3
|
|
x * y
|
Multiplication
|
Product of x and y
|
5 * 2
|
10
|
|
x / y
|
Division
|
Quotient of x and y
|
15 / 5
|
3
|
|
x % y
|
Modulus
|
Remainder of x divided by
y
|
5 % 2
10 % 8 10 % 2 |
1
2 0 |
|
- x
|
Negation
|
Opposite of x
|
- 2
|
|
|
a . b
|
Concatenation
|
Concatenate two strings
|
"Hi" .
"Ha"
|
HiHa
|
Assignment Operators
The basic
assignment operator in PHP is "=". It means that the left operand
gets set to the value of the expression on the right. That is, the value of
"$x = 5" is 5.
|
Assignment
|
Same as...
|
Description
|
|
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
|
|
a .= b
|
a = a . b
|
Concatenate two strings
|
Incrementing/Decrementing Operators
|
Operator
|
Name
|
Description
|
|
++ x
|
Pre-increment
|
Increments x by one, then
returns x
|
|
x ++
|
Post-increment
|
Returns x, then
increments x by one
|
|
-- x
|
Pre-decrement
|
Decrements x by one, then
returns x
|
|
x --
|
Post-decrement
|
Returns x, then
decrements x by one
|
Comparison Operators
Comparison
operators allows you to compare two values:
|
Operator
|
Name
|
Description
|
Example
|
|
x == y
|
Equal
|
True if x is equal to y
|
5==8 returns false
|
|
x === y
|
Identical
|
True if x is equal to y,
and they are of same type
|
5==="5" returns
false
|
|
x != y
|
Not equal
|
True if x is not equal to
y
|
5!=8 returns true
|
|
x <> y
|
Not equal
|
True if x is not equal to
y
|
5<>8 returns true
|
|
x !== y
|
Not identical
|
True if x is not equal to
y, or they are not of same type
|
5!=="5" returns
true
|
|
x > y
|
Greater than
|
True if x is greater than
y
|
5>8 returns false
|
|
x < y
|
Less than
|
True if x is less than y
|
5<8 returns true
|
|
x >= y
|
Greater than or equal to
|
True if x is greater than
or equal to y
|
5>=8 returns false
|
|
x <= y
|
Less than or equal to
|
True if x is less than or
equal to y
|
5<=8 returns true
|
Logical Operators
|
Operator
|
Name
|
Description
|
Example
|
|
x and y
|
And
|
True if both x and y are
true
|
x=6
y=3 (x < 10 and y > 1) returns true |
|
x or y
|
Or
|
True if either or both x
and y are true
|
x=6
y=3 (x==6 or y==5) returns true |
|
x xor y
|
Xor
|
True if either x or y is
true, but not both
|
x=6
y=3 (x==6 xor y==3) returns false |
|
x && y
|
And
|
True if both x and y are
true
|
x=6
y=3 (x < 10 && y > 1) returns true |
|
x || y
|
Or
|
True if either or both x
and y are true
|
x=6
y=3 (x==5 || y==5) returns false |
|
! x
|
Not
|
True if x is not true
|
x=6
y=3 !(x==y) returns true |
Array Operators
|
Operator
|
Name
|
Description
|
|
x + y
|
Union
|
Union of x and y
|
|
x == y
|
Equality
|
True if x and y have the
same key/value pairs
|
|
x === y
|
Identity
|
True if x and y have the
same key/value pairs in the same order and of the same types
|
|
x != y
|
Inequality
|
True if x is not equal to
y
|
|
x <> y
|
Inequality
|
True if x is not equal to
y
|
|
x !== y
|
Non-identity
|
True if x is not
identical to y
|
Conditional
Statements
Very often when you write code, you want to perform
different actions for different decisions.
You can use conditional statements in your code to do this.
In PHP we have the following conditional statements:
- if statement - use this statement to execute some code only if
a specified condition is true
- if...else statement - use this statement to execute some code if a
condition is true and another code if the condition is false
- if...elseif....else statement - use this statement to select one of several
blocks of code to be executed
- switch statement - use this statement to select one of many blocks
of code to be executed
The if
Statement
Use the if statement to execute some code only if a
specified condition is true.
Syntax
if (condition) code to be
executed if condition is true;
The following example will output "Have a nice
weekend!" if the current day is Friday:
<html>
<body>
<?php
$d=date("D");
if ($d=="Fri") echo "Have a nice weekend!";
?>
</body>
</html>
<body>
<?php
$d=date("D");
if ($d=="Fri") echo "Have a nice weekend!";
?>
</body>
</html>
Notice that there is no ..else.. in this syntax. The code is
executed only if the specified condition is true.
The
if...else Statement
Use the if....else statement to execute some code if a
condition is true and another code if a condition is false.
Syntax
if (condition)
{
code to be executed if condition is true;
}
else
{
code to be executed if condition is false;
}
{
code to be executed if condition is true;
}
else
{
code to be executed if condition is false;
}
Example
The following example will output "Have a nice
weekend!" if the current day is Friday, otherwise it will output
"Have a nice day!":
<html>
<body>
<?php
$d=date("D");
if ($d=="Fri")
{
echo "Have a nice weekend!";
}
else
{
echo "Have a nice day!";
}
?>
</body>
</html>
<body>
<?php
$d=date("D");
if ($d=="Fri")
{
echo "Have a nice weekend!";
}
else
{
echo "Have a nice day!";
}
?>
</body>
</html>
The if...elseif....else
Statement
Use the if....elseif...else statement to select one of
several blocks of code to be executed.
Syntax
if (condition)
{
code to be executed if condition is true;
}
elseif (condition)
{
code to be executed if condition is true;
}
else
{
code to be executed if condition is false;
}
{
code to be executed if condition is true;
}
elseif (condition)
{
code to be executed if condition is true;
}
else
{
code to be executed if condition is false;
}
Example
The following example will output "Have a nice
weekend!" if the current day is Friday, and "Have a nice Sunday!"
if the current day is Sunday. Otherwise it will output "Have a nice
day!":
<html>
<body>
<?php
$d=date("D");
if ($d=="Fri")
{
echo "Have a nice weekend!";
}
elseif ($d=="Sun")
{
echo "Have a nice Sunday!";
}
else
{
echo "Have a nice day!";
}
?>
</body>
</html>
<body>
<?php
$d=date("D");
if ($d=="Fri")
{
echo "Have a nice weekend!";
}
elseif ($d=="Sun")
{
echo "Have a nice Sunday!";
}
else
{
echo "Have a nice day!";
}
?>
</body>
</html>
The PHP
Switch Statement
Use the switch statement to select one of many blocks of
code to be executed.
Syntax
switch (n)
{
case label1:
code to be executed if n=label1;
break;
case label2:
code to be executed if n=label2;
break;
default:
code to be executed if n is different from both label1 and label2;
}
{
case label1:
code to be executed if n=label1;
break;
case label2:
code to be executed if n=label2;
break;
default:
code to be executed if n is different from both label1 and label2;
}
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
<html>
<body>
<?php
$x=1;
switch ($x)
{
case 1:
echo "Number 1";
break;
case 2:
echo "Number 2";
break;
case 3:
echo "Number 3";
break;
default:
echo "No number between 1 and 3";
}
?>
</body>
</html>
<body>
<?php
$x=1;
switch ($x)
{
case 1:
echo "Number 1";
break;
case 2:
echo "Number 2";
break;
case 3:
echo "Number 3";
break;
default:
echo "No number between 1 and 3";
}
?>
</body>
</html>
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
lines in a script we can use loops to perform a task like this.
In PHP, we have the following looping statements:
- while - loops through a block of code while a specified
condition is true
- do...while - loops through a block of code once, and then
repeats the loop as long as a 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
The
while Loop
The while loop executes a block of code while a condition is
true.
Syntax
while (condition)
{
code to be executed;
}
{
code to be executed;
}
Example
The example below first sets a variable i to 1
($i=1;).
Then, the while loop will continue to run as long as i
is less than, or equal to 5. i will increase by 1 each time the loop
runs:
<html>
<body>
<?php
$i=1;
while($i<=5)
{
echo "The number is " . $i . "<br />";
$i++;
}
?>
</body>
</html>
<body>
<?php
$i=1;
while($i<=5)
{
echo "The number is " . $i . "<br />";
$i++;
}
?>
</body>
</html>
Output:
The number is 1
The number is 2
The number is 3
The number is 4
The number is 5
The number is 2
The number is 3
The number is 4
The number is 5
The
do...while Statement
The do...while statement will always execute the block of
code once, it will then check the condition, and repeat the loop while the
condition is true.
Syntax
do
{
code to be executed;
}
while (condition);
{
code to be executed;
}
while (condition);
Example
The example below first sets a variable i to 1
($i=1;).
Then, it starts the do...while loop. The loop will increment
the variable i with 1, and then write some output. Then the condition is
checked (is i less than, or equal to 5), and the loop will continue to
run as long as i is less than, or equal to 5:
<html>
<body>
<?php
$i=1;
do
{
$i++;
echo "The number is " . $i . "<br />";
}
while ($i<=5);
?>
</body>
</html>
<body>
<?php
$i=1;
do
{
$i++;
echo "The number is " . $i . "<br />";
}
while ($i<=5);
?>
</body>
</html>
The for
Loop
The for loop is used when you know in advance how many times
the script should run.
Syntax
for (init; condition; increment)
{
code to be executed;
}
{
code to be executed;
}
Parameters:
- init:
Mostly used to set a counter (but can be any code to be executed once at
the beginning of the loop)
- condition: Evaluated for each loop iteration. If it
evaluates to TRUE, the loop continues. If it evaluates to FALSE, the loop
ends.
- increment: Mostly used to increment a counter (but can be
any code to be executed at the end of the iteration)
Note: The init
and increment parameters above can be empty or have multiple expressions
(separated by commas).
Example
The example below defines a loop that starts with i=1. The
loop will continue to run as long as the variable i is less than, or
equal to 5. The variable i will increase by 1 each time the loop runs:
<html>
<body>
<?php
for ($i=1; $i<=5; $i++)
{
echo "The number is " . $i . "<br />";
}
?>
</body>
</html>
<body>
<?php
for ($i=1; $i<=5; $i++)
{
echo "The number is " . $i . "<br />";
}
?>
</body>
</html>
Output:
The number is 1
The number is 2
The number is 3
The number is 4
The number is 5
The number is 2
The number is 3
The number is 4
The number is 5
The
foreach Loop
The foreach loop is used to loop through arrays.
Syntax
foreach ($array as $value)
{
code to be executed;
}
{
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) - so on
the next loop iteration, you'll be looking at the next array value.
Example
The following example demonstrates a loop that will print
the values of the given array:
<html>
<body>
<?php
$x=array("one","two","three");
foreach ($x as $value)
{
echo $value . "<br />";
}
?>
</body>
</html>
<body>
<?php
$x=array("one","two","three");
foreach ($x as $value)
{
echo $value . "<br />";
}
?>
</body>
</html>
What is an Array?
A
variable is a storage area holding a number or text. The problem is, a variable
will hold only one value.
An array
is a special variable, which can store multiple values in one single variable.
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="Saab";
$cars2="Volvo";
$cars3="BMW";
$cars2="Volvo";
$cars3="BMW";
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?
The best
solution here is to use an array!
An array
can hold all your variable values under a single name. And you can access the
values by referring to the array name.
Each
element in the array has its own index so that it can be easily accessed.
In PHP,
there are three kind of arrays:
- Numeric array - An array with a numeric index
- Associative array - An array where each ID key is
associated with a value
- Multidimensional array - An array containing one or more
arrays
Numeric Arrays
A numeric
array stores each array element with a numeric index.
There are
two methods to create a numeric array.
1. In the
following example the index are automatically assigned (the index starts at 0):
$cars=array("Saab","Volvo","BMW","Toyota");
2. In the
following example we assign the index manually:
$cars[0]="Saab";
$cars[1]="Volvo";
$cars[2]="BMW";
$cars[3]="Toyota";
$cars[1]="Volvo";
$cars[2]="BMW";
$cars[3]="Toyota";
Associative
Arrays
An associative array, each ID key is associated with a value.
When storing data about specific named values, a numerical
array is not always the best way to do it.
With associative arrays we can use the values as keys and
assign values to them.
Example
1
In this example we use an array to assign ages to the different
persons:
$ages = array("Peter"=>32,
"Quagmire"=>30, "Joe"=>34);
Example
2
This example is the same as example 1, but shows a different
way of creating the array:
$ages['Peter'] = "32";
$ages['Quagmire'] = "30";
$ages['Joe'] = "34";
$ages['Quagmire'] = "30";
$ages['Joe'] = "34";
PHP
Functions
In this chapter we will show you how to create your own
functions.
To keep the script from being executed when the page loads,
you can put it into a function.
A function will be executed by a call to the function.
You may call a function from anywhere within a page.
Create
a PHP Function
A function will be executed by a call to the function.
Syntax
function functionName()
{
code to be executed;
}
{
code to be executed;
}
PHP function guidelines:
- Give the function a name that
reflects what the function does
- The function name can start with
a letter or underscore (not a number)
Example
A simple function that writes my name when it is called:
<html>
<body>
<?php
function writeName()
{
echo "Kai Jim Refsnes";
}
echo "My name is ";
writeName();
?>
</body>
</html>
<body>
<?php
function writeName()
{
echo "Kai Jim Refsnes";
}
echo "My name is ";
writeName();
?>
</body>
</html>






0 comments:
Post a Comment