Returning values

Values are returned by using the optional return statement. Any type may be returned, including lists and objects. This causes the function to end its execution immediately and pass control back to the line from which it was called. See return() for more information.

function square ($num)
    return $num * $num;
echo square (4);   // outputs '16'.

You can't return multiple values from a function, but similar results can be obtained by returning a list.

function small_numbers()
    return array (0, 1, 2);
list ($zero, $one, $two) = small_numbers();

To return a reference from a function, you have to use the reference operator & in both the function declaration and when assigning the returned value to a variable:

function &returns_reference()
    return $someref;

$newref =& returns_reference();

For more information on references, please check out References Explained.