Function declarations follow the "K&R style":
<?php
function fooFunction($arg1, $arg2 = '')
{
if (condition) {
statement;
}
return $val;
}
?>
Arguments with default values go at the end of the argument list. Always attempt to return a meaningful value from a function if one is appropriate. Here is a slightly longer example:
<?php
function connect(&$dsn, $persistent = false)
{
if (is_array($dsn)) {
$dsninfo = &$dsn;
} else {
$dsninfo = DB::parseDSN($dsn);
}
if (!$dsninfo || !$dsninfo['phptype']) {
return $this->raiseError();
}
return true;
}
?>
Functions with many parameters may need to be split onto several lines
to keep the 80 characters/line limit. The first parameters may be put onto the
same line as the function name if there is enough space. Subsequent
parameters on following lines are to be indented 4 spaces. The closing
parenthesis and the opening brace are to be put onto the next line, on the
same indentation level as the "function
" keyword.
<?php
function someFunctionWithAVeryLongName($firstParameter = 'something', $secondParameter = 'booooo',
$third = null, $fourthParameter = false, $fifthParameter = 123.12,
$sixthParam = true
) {
//....
?>