Introduction To PHP

Any problem with PHP can be disscused here
Post Reply
anish
Posts: 353
Joined: Fri Apr 27, 2007 12:34 pm
Contact:

Introduction To PHP

Post by anish »

So it's fine telling people how to write scripts but if they don't know what it means, it's pretty useless. Even if you give someone directions to your house, if you haven't taught them how to read directions, the directions are meaningless. With that in mind, I wanted to make a series of tutorials explaining how to write PHP, hoping it will encourage a few user's on the board to jump into the depths of PHP.
How to define PHP code
The Basics
Creating a PHP page is just as simple as saving the page as filename.php as opposed to filename.html. So create a PHP file for practicing the areas covered in this tutorial so you can try the examples for yourself. As long as your host has PHP support then your page should function properly.

The PHP code must begin with a "<?php" tag and end with "?>" so here is a short example;

Code: Select all

<?php
         //Code goes here
?>

Commenting
We comment in PHP by using the double slashes "//" Anything after those slashes on that line are commented. They don't do anything to the code, but if you go back to the code after a long time, or give the code to someone else, it will show what you were trying to achieve with that bit of code. It may seem boring to write a comment after everyline but it will help you in the long run. Not only is it a future reference, but by thinking through the problem in english words, you are more likely to understand how to solve it.
also comment in PHP using a "/*" to mark the start of the commented text and "*/" to mark the end. I only tend to use this if i want to stop a block of code from operating temporarily. Rather than deleting it, I comment it and then uncomment it later. Using the "/* */" syntax to comment allows you to comment multiple lines as opposed to just one line using "//".

Code: Select all

<?php
//This line is commented
This line isn't.
/* These
Lines
Are 
Commented */
?>

Out Putting Text
The most simple way of outputting text is using the echo function.

Code: Select all

<?php
echo "Hello World";
?>
If we save this code into a file and open that file in a Web Browser we would get the words "Hello World" in black writing. Notice we put double quotes around the text we want to echo. You can use single quotes as well, it doesn't make a difference (although there is some arguments that single quotes are slightly faster when processing but it is insignificant, so nothing to worry about.)
If you are trying to output the text "It was Maggie's" then we need to use double quotes. If we use single quotes, then it would recognise the apostrophe after Maggie as the closing single quote and then the PHP would wonder why there was an "s" and another single quote after that. In otherwords, it will throw up some error messages.

Similarly, if you were trying to output;
Maggie said "That is mine."
Then we will use single quotes.


There is another way around this and that is to use a backslash as an escape character. Look at this bit of code.

Code: Select all

<?php
echo "Maggie said \"That is mine.\"";
?>

Notice how we put backslashes before the double quotes? This tells PHP not to take the next pair of double quotes as closing tags.

The Semi Colon Of doom
You may have also noticed the semi-colon ";" at the ends of the echo function. This is a PHP syntax perk you are going to have to get used to. I am still forgetting to put the semi-colons at the end of my lines and almost half of my errors are specifically that. Basically you need to tell PHP "Hey, this is the end of this line, nothing comes after this so move onto the next line and continue processing". If i done this;

Code: Select all

<?php
echo "I am trying to cause an error"
echo "Will it throw up an error?";
?>

The answer is yes, it will throw up an error. On line 2 to be exact, we have left out our semi-colon. That is one of the great advantages of PHP it will tell you the line number and the nature of the error that is causing your script to not function properly. This makes error fixing ten times easier. You'll still get quite angry with some of the errors though but you'll get used to error checking, with the more PHP you encounter.

A new line
The final trick of outputting data in this tutorial is taking a new line. Look at this example;

Code: Select all

<?php
echo "line 1";
echo "line 2";
?>

You may expect this to show up in your browser like this,

Code: Select all

Line 1
Line 2
Why? You haven't told PHP to output line 1, take a new line, and output line 2. You have just told it to output line 1 and output line 2. So you will in fact get;

Code: Select all

Line 1Line 2
So we need to add the return command "\n" where we want the new line to take place. This uses the magical backspace command again, once again it tells PHP to treat the next character specially and PHP will read the n and take a new line.

Code: Select all

<?php
echo "Line 1\n";
echo "Line 2";
?>
That will output the desired result. We print out line 1 and take a new line, then print out line 2. You may notice that you can combine the two lines of code into one statement and still get the same result;

Code: Select all

<?php
echo "Line 1\nLine 2";
?>
Whilst this is perfectly acceptable, it all comes down to user preference and readibility to combine the statements. Say you wanted to edit line 2 and you looked through your code. You'd expect to find it in the second echo statement but in reality, it's in the first. This seems relatively obvious when are lines of text are "line 1" and "line 2" but if they didn't have numbers in it, the "\n" would be hard to spot in amongst loads of text.

So I hope you have enjoyed this tutorial and it has taught you something. Maybe I even helped you create your very first PHP page. Please leave any comments, or suggestions to my tutorial and I will try and implement them into it, if certain areas are vague

Anish


Post Reply