if ($CW1 - Personal Home Pages (at UEL)

advertisement
MS3304: Week 6
Conditional statements
Overview
•
•
•
•
•
The flow of control through a script
Boolean Logic
Conditional & logical operators
Basic decision making statements in PHP
Complex decision making statements in
PHP
• Other uses of if statements
• Advanced topic introduction: the switch
statement
Program flow of control
• Order of statement execution is
called the flow of control
• Default order of execution of
programming statements is linear
• Some statements (conditional) can
modify the order of execution
• Conditional statements are based
on Boolean logic
Conditional statements
• Conditional statements allow the
script to decide which statement will
be executed next
• Conditional statements in PHP are:
– if
– else
– elseif
Overview of an the if statement
The basic if statement has the
following syntax
if is a PHP reserved word
if (condition){
statement;
}
If the condition is true,
this statement is executed
The condition is a Boolean
expression that can be
evaluated as true or false
Boolean logic
• Developed by George Boole in mid
1800s
• All Boolean logic is based on the
evaluation of statements
• These statement can either be
evaluated as true or false
• Conditional and logical operators
are used to create these statements
Boolean logic example
Assuming we have the following variables:
$CW1
$CW2
$CWAverage = ($CW1+$CW2)/2
What logical statements, in plain English,
can we make to tell students at UEL if they
have passed or need to do a resit?
Comparative and logical operators
Comparative
Logical
== equal to
!
!=not equal to
&&
<
less than
||
>
greater than
<= less than or equal to
>= greater than or equal to
NOT
AND
OR
Comparative and logical operators
example 1
if ($CW1=="NS"){
echo "CW1: 0 - <b>Resit</b>(not submitted). <br>\n";
}
if($CW1<30){
echo "CW1: $CW1 - <b>Resit</b> (below 30) .<br>\n";
}
if(($CW1>29) && ($CW1<40)){
echo "CW1: $CW1 - not passed, but threshold
met.<br>\n";
}
if ($CW1<40){
echo "CW1 passed.<br>\n";
}
Comparative and logical operators
example 2
if ( ($CW1<30 || $CW1 == "NS")
|| ($CW2<30 || $CW2 == "NS")
|| ($CWAverage <40) ){
echo "You have not passed
the module and must resit
at least one of the of the
pieces of CW.";
}
Comparative and logical operators
example 3
if ( ($CW1>=30 && $CW1!="NS")
&& ($CW2>=30 && $CW2!="NS")
&& ($CWAverage>=40) ){
echo "You have passed the
module with a mark of
$CWAverage.";
}
Overview of an the if/else statement
The basic if/else statement has the
following syntax
if (condition){
If the condition is true these
statements;
statements are executed
} else{
If the initial condition is false then
statements;
the second block of statements is
}
executed
if/else statements
if ( ($CW1>=30 && $CW1!="NS")
&& ($CW2>=30 && $CW2!="NS")
&& ($CWAverage>=40) ){
echo "You have passed the module!"
}else{
echo "You have not passed the
module and must resit at least one
of the of the pieces of CW.";
}
Overview of an the if/elseif statement
The basic if/else statement has the
following syntax
If the condition is true these
if (condition){
statements are executed
statements;
} elseif (condition){ If the first condition is
false it tests the second
statements;
condition, its true these
} else{
statements are executed.
statements;
If neither of the conditions are true,
}
then these statements are executed
if/elseif statements
if ($CW1=="NS"){
echo "CW1: 0 - <b>Resit</b> (not
submitted).<br>\n";
}elseif($CW1<30){
echo "CW1: $CW1 - <b>Resit</b> (below
30) .<br>\n";
}elseif(($CW1>29) && ($CW1<40)){
echo "CW1: $CW1 - not passed, but
threshold met.<br>\n";
}else{
echo "CW1: $CW1 - passed.<br>\n";
}
Nested if statements
if (condition){
if(condition){
statements
} else{
statements
}
} else{
statements
}
Nested if statements example
The Marks Calculator
Other uses of if statements
if ($catGender=="Male" ){
$catPronoun = "He";
}elseif ($catGender=="Female" ) {
$catPronoun = "She";
} else {
$catPronoun = "The cat";
}
echo "I have a $catGender $catColour
cat named $myCat. $catPronoun is
$catAge years old."
If statements your turn
Write the PHP statements to
– Take both a cat’s age in
years and a humans as
input passed from a
form
– Calculates the age of the
cat in human years and
displays it
– Displays a statement
saying if the cat is older
or younger than the
person in cat equivalent
years
Cat age calculation
formula details
Year 1 = 15 human
years
Year 2 = 9 human
years
Years 3+ = 4 human
years per year
Advanced topic:
The switch statement
switch ($catGender){
case "Male" :
$catPronoun = "He";
break;
case "Female" :
$catPronoun = "She";
break;
default :
$catPronoun = "The cat";
}
PHP conditional statements
summary
• Used to control the flow of execution of
statements in a script
• Based on the evaluation of a Boolean
statement through the use of
comparative and logical operators
• Can use the if, elseif and else statements
to compose more logically complex
statements
• Can be nested within each other
Download