View Full Version : PHP Tutorial


Eric
This is a simple intro tutorial to help you get started as well as give you some ideas on what you can do with PHP. PHP is a server side html embedded scripting language that can be used to create dynmaic web pages and many other things. Some benefits of using PHP are it's free, it's fast, it's fairly easy to learn, and you can embed it into your regular html pages.

Okay we'll begin with a simple PHP script for an example.


<html>
<head>
<title>PHP TEST</title>
</head>
<body>

<?php
echo 'PHP is easy!';
?>

</body>
</html>


Copy that code into your favirote text editor, notepad will work just fine. Save it as test.php. Make sure it ends with a .php extension. Upload it to where you store your web accessible files and call it up in your browser. If you see "PHP is easy!" then you know PHP is installed and working on your server. Notice the <?php and the ?> these are the start and end tags, they say hey parse up some PHP and hey stop parsing now. You can just use <? for the start tag if the short tag is enabled on your server. Also notice the semicolon at the end of the echo statement. This tells the parser where one line of code ends and the next one begins. You could do this just as easily with regular html, but we needed an example to show you how it works. If you look at the source code for that page after you call it up in your browser it will look like this:


<html>
<head>
<title>PHP TEST</title>
</head>
<body>

PHP is easy!

</body>
</html>


You can't view the sever side scripts source code from your browser. It will be removed by the time it gets to your browser for viewing. The only code you'll be able to see is the regular html that was included in the script and/or generated by it. Not having to rely on the clients browser capabilities to deliver your contnet is another good thing about using a server side language such as PHP.


PHP Comments

Comments are used for helping the user and/or the developer remember and understand what the program does and/or provide instructions. You can use single or multiline comments. Comments will be stripped out of the program and ignored by the interpreter.

Example:


<?php
// This is a single line comment.
$var = 1;
/* This is a multiline
comment. */
echo $var; // Another single line comment.
?>



PHP Variables

You can define a variable to store for later use. Variables start with the $ sign and are assigned with the = operator . To use a variable you need to assign a value to it.

$webdev = 'fun';

The name of the variable is on the left of the = sign and the value is on the right. In this case $webdev has the value of fun. Variables can contain numbers, letters and underscores, but may not begin with a number.

Some examples of using PHP variables.


<html>
<body>

<?php
$webdev = 'fun and interesting';
?>
<font color="green">Web development is really <?php echo "$webdev"; ?></font>

</body>
</html>


The output of this code would be:

Web development is really fun and interesting


PHP echo statement

The echo statement prints the output to the browser. You can also use print, but there is slight difference between the two. Also notice how you can jump in and out of PHP mode when ever you wish, and how the variable contains it's value throughout the script, but only when you are in PHP mode. Okay now you should have a basic idea of mixing PHP in with HTML.


More examples of using PHP variables:


<?php
$webdev = 'Web Development is really fun and interesting';
?>
<font color="green"><?php echo $webdev; ?></font>


The out put of this code would be the same as the first example above:

Web Development is really fun and interesting

If you are just echoing a variable you don't need to surround it with quotes.


The difference betweeen single and double quotes

If you want to print out the value of a variable within a string you need to surround the string that you're printing with double quotes, otherwise the actual variable name will be printed out.


<?php

$name = 'Web';
$lastname = 'Design';

echo "My first name is $name and my last name is $lastname";

?>


The output of this would be:

My first name is Web and my last name is Design

If we do the same with single quotes:


<?php

$name = 'Web';
$lastname = 'Design';

echo 'My first name is $name and my last name is $lastname';

?>


The output would be:

My first name is $name and my last name is $lastname

You can see the actual variable name was printed rather than the value of the variable because PHP didn't even attempt to parse it since we didn't use double quotes in our echo statement.

The same thing is true when assigning variables.


<?php

$name = 'Web';
$lastname = 'Design';
$fullname = "My first name is $name and my lastname is $lastname";

echo $fullname;

?>


The output would be:

My first name is Web and my last name is Design

If we assign the vaules to $fullname with single quotes:


<?php

$name = 'Web';
$lastname = 'Design';
$fullname = 'My first name is $name and my lastname is $lastname';

echo $fullname;

?>


The output would be:

My first name is $name and my last name is $lastname

Basically variables aren't replaced with their value unless they are surrounded by double quotes with a few exceptions.



Using PHP Operatros

Comparison operators - compare two values
== is equal to
!= is not equal to
< is less than
> is greater than
<= is less than or equal to
>= is greater than or equal to

Arithmetic Operators
+ Addition
- Subtraction
* Multiplication
/ Division
% Modulus

Logical Opertators
&& (The first and the second is true) Example: $a && $b
and (The first and the second is true)
|| (The first or the second is true) Example: $a || $b
or (The first or the second is true)
xor (True if either are true, but not both)

The reason for the two different variations of "and" and "or" operators is that they operate at different precedences. The "&&" and "||" operators are used the majority of the time.


Some basic Arithmetic examples:


<?php

$monthly = 10;
$yearly = 20;
$total = $monthly+$yearly;

echo $total;

?>


The output would be 30.

<?php

echo 2+2;

?>

The out put would be 4.

<?php

$monthly = 10;
$yearly = 20;
$monthly += 10; //Same as $monthly=$monthly+10;
$yearly += 10;
$total= $monthly+$yearly;

echo $total;

?>

The out put would be 50.

<?php

$monthly =10;
$monthly++; //Adds one to monthly. The same as $monthly = $monthly + 1;

echo $monthly;

?>

The output would be 11.


The same would work with - and --

Note: ++ and -- are Incrementing/Decrementing Operators and += is an Assignment Operator just like the = sign.


String Operators.

. concatenate (put two strings together) Returns the concatenation of its right and left arguments.
.= (concatenate and assign) Appends the argument on the right side to the argument on the left side.

Some examples:


<?php
$name = "Web";
$fullname = $name . "Design";
echo $fullname;
?>


Now $fullname contains WebDesign. The . is used to put two strings together.
The output of this would be WebDesign

If we wanted to put a space in there we could do it like this:


<?php

$name ="Web";
$fullname = $name ." " ."Design";

echo $fullname;

?>


Now the output would be Web Design. To make it even easier we could write the variable like $name = "Web "; so that the space is already there.


<?php

$name = "Web ";
$name .= "Design";

echo $name;

?>


Now $name would contain Web Design.


PHP Control Structures
Using if, elseif, and else, to check for certain conditions.

Examples:


<?php

$howmuch = 10;
if ($howmuch == 10) {
print 'how much is 10';
}

?>


This checks to see if the variable $howmuch is equal to 10. If it is, it goes on and executes the code between the curly braces. In this case the result would be how much is 10.

Sometimes you may want to make the script do something if the if condition is not true.


<?php

$howmuch = 5;

if ($howmuch >= 10) {
print 'how much is 10 or greater';
}
else {
print 'how much is not enough';
}

?>


This checks to see if the variable $howmuch is greater than or equal to 10, and if it is then it prints how much is 10 or greater. If $howmuch is not greater than or equal to 10 then it bypasses the code in in the first set of curly braces and executes the code within the else statements curly braces. In this case the result would be how much is not enough.

You can also check for mutltiple conditions with elseif.


<?php

$howmuch = 10;

if ($howmuch <= 7) {
print 'how much is less than or equal to 7';
} elseif ($howmuch == 6) {
print 'how much is 6';
}
else {
print "how much is actually $howmuch";
}

?>


Scince $howmuch is not less then or equal to 7 and it doesn't equal 6 the result would be how much is actually 10.

You can add as many elseif statements as you need. You use the else statement for when all else fails.


PHP switch statement

First an example of an if elseif statement:



<?php

$day = 'friday';

if ($day == 'Monday') {
echo 'Monday';
} elseif ($day == 'Thursday') {
echo 'Thursday';
}
else {
echo 'Not today';
}
?>


The result would be Not today.

Now we can get the same results using the switch statement:


<?php
switch ($day) {
case "Monday":
echo 'Monday';
break;
case "Thursday":
echo 'Thursday';
break;
default:
echo 'Not today';
break;
}

?>


The result would be the same as it was in the elseif statement: Not today.

You can use switch as an alternative for if elseif statements. It can be good to use switch when you're checking for a lot of conditions rather than having huge elseif statements.

PHP INCLUDES

You can also use PHP to include files.

For example a file called header.inc contatins:


<html>
<head>
<title>Title of your page</title>
</head>
<body>

<h7>Header Text</h7>


And your main page named index.php contains:

All of your usual html content here.

And a file named footer.inc contains:


Coypright yoursite, All Rights Reserved. and what ever else you want in your footer here.

</body>
</html>


Okay so now we've got three files: header.inc, index.php, and footer.inc

Putting it all together.

In your index.php you can include the header.inc and footer.inc files like this:

File index.php


<?php
include("header.inc");
?>

All of your main html content here.

<?php
include("footer.inc");
?>

</body>
</html>


Now with the example above the source code would like this after you call it up in your browser:


<html>
<head>
<title>Title of your page</title>
</head>
<body>

<h7>Header Text</h7>

All of your usual html content here.

Coypright yoursite, All Rights Reserved. and what ever else you want in your footer here.

</body>
</html>


This can make it nice, for example if you needed to edit the header of each page on your site. All you would need to do is edit the one header.inc file and it would be changed on every page of your site. It's much easier than going through and editing each page one at a time, especially if you have a lot of pages.

More on pages within pages with PHP here http://coolesthost.com/showthread.php?t=34

.