PHP – Lesson 10 : Functions

Functions Overview

What is a function?

  • A function is a way to write modularized code that can be used more than once just by calling out its function name in a script.

Where do I find functions?

  • Functions are largely what PHP is built on. PHP has over 3000 built-in functions you can use so you don’t have to reinvent the wheel every time you want to do a set of tasks.
  • You can also create your own custom funtions to perform custom tasks.

What are advantages of using functions?

  • For tasks you need to repeat in several places in the code, you can simple call out a funtion from a centralized place instead of writing the same coded over and over.
  • When updating the code, you can update a single function in one place rather than modifying code in several places.
  • They usually speed up the processing time of your pages.

How do I make my own function?

Let’s say you want to create a function that automatically adds the sales tax into a subtotal to give you a final price. We will call it “Total” and the tax will be 7.75%, as follows:

  • function Tax($subtotal) {
    return $subtotal *= .0775;

What this will do is take any value called by the “Tax” function and substitute that passed value in place of “$subtotal.” For instance, if we are explicit and want to find the tax on twenty dollars, we could invoke the function as follows:

  • $tax = Tax(20);
    echo "\$$tax";

This would result in outputting the string (no quotes) of ” $1.55 “. You could produce the same results by running the function on a variable instead of a raw number:

  • $amount = 20;
    $tax = Tax($amount);
    echo "\$$tax";

Variable Scope And Functions

It is important to note that functions are self-contained. What happens with variables inside of a function is invisible to the rest of the script outside of the function. When variables are passed as arguments to a function, only the value is passed; thus, once the function completes its task, the variables inside of it cease to exist, and they are only created or invoked again if the function is reused.

“The scope of a variable – in other words, where it can be used – depends entirely on where the variable is defined. A variable defined in a function or as one of its parameters is limited in scope to that function. It cannot be seen outside the function. Equally, a function has no knowledge of or influence over variables outside.”

(from Adobe Dreamweaver CS5 with PHP by David Powers)

Demo : Create a User-Defined Gallery Function

To learn how you can create a user-defined gallery function, go to the “Creating a Gallery Function” demo page. It will show you how you can write a customizable gallery function that scans gallery directories to populate thumbnail galleries with larger lightbox effect opening images. No database necessary. . . . Additionally, it covers the concepts important to reusable code (i.e. functions).