Home page   WebCheatSheet.com

PHP: Functions

A function is a block of code which can be called from any point in a script after it has been declared. It is basically a compartmentalized PHP script designed to accomplish a single task. Furthermore, code contained within functions is ignored until the function is called from another part in the script. Functions are useful because they contribute to rapid, reliable, error-reducing coding, and increase legibility by tiding up complicated code sequences.

It is good programming practice to use functions to modularize your code and to better provide reuse. To declare a function, you simply type:

   function function_name(param_1, ... , param_n)

      return return_value;

We can optionally pass parameters to the functions to be known as local variable, and we can also return a result with the "return value" statement. This produces the ending of the function returning a value.

Creating a simple function

Let's create two functions that will print the string "PHP Functions" five times, but the first one will not contain parameters, and the second one will. A function parameter is nothing more than a piece of data that the function requires to execute. In above example also included code to call the function.

function firstFunction() 
    for($i = 0; $i != 5; $i++)
        echo "<P>PHP Functions!</P>";

//let's add parameters to that function
function secondFunction($num, $msg) 
    for($i = 0; $i != $num; $i++)
        echo "<P>". $msg ."</P>";

echo "This is before the functions is called<br>";

echo "The first function output is:"
  firstFuction(5,"This is a function with parameters");

echo "The second function output is:";
  secondFuction(5,"This is a function with parameters");
echo "This is after the function has been called<br>";

Next example creates a function that will calculate arithmetic mean and return a result with the "return value" statement:

function aritmetic_mean($a, $b) 

   $result = ( $a + $b ) / 2; 
   return $result; 

//print the the results of calculation    
echo aritmetic_mean(4,6),"<br>"; 
echo aritmetica_mean(3242,524543),"<br>";    

Variable Scope and Lifetime

It's important to note that if you define a variable within a function, that variable is only available within that function; it cannot be referenced in another function or in the main body of your program code.  This is known as a variable's scope.  The scope of a variable defined within a function is  local to that function.

If a function needs to use a variable that is defined in the main body of the program, it must reference it using the "global" keyword, like this:

function AddingNumbers ( )
   global $sum = 2 + 2

$sum = 0
Addnumbers ( )
echo "2 + 2 = ".$sum

While the scope of a variable defined in a function is local to that function, a variable defined in the main body of code has a global scope.  The "global" keyword tells PHP to look for a variable that has been defined outside the function.

And what about lifetime for a variable?  A variable defined within a PHP program script exists only while that script is running.  When the script ends, the variable ceases to exist.  This seems pretty obvious!  Now apply it to a function:  a variable defined within a function exists only while that function is being processed; when the function ends, the variable ceases to exist.

Copyright © 2005-2007 www.WebCheatSheet.com All Rights Reserved.