Определения функций

Определения функций следуют такому cоглашению:

<?php
function fooFunction($arg1$arg2 '')
{
    if (
condition) {
        
statement;
    }
    return 
$val;
}
?>

Аргументы функций со значениями по умолчанию должны находиться в конце списка аргументов. Функции всегда должны возвращать значение, если это возможно в принципе. Чуть более подробный пример:

<?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;
}
?>
Вызовы функций (Previous) Комментарии (Next)
Last updated: Thu, 18 Dec 2014 — Download Documentation
Do you think that something on this page is wrong? Please file a bug report or add a note.
View this page in:

User Notes:

Note by: Mike
Note to previous post: the Allman style is not only used for functions but also for class definitions.
Note by: pear at alan hogan dot com
Allman style is defined here for those unfamiliar with it:
http://en.wikipedia.org/wiki/Indent_style

Please note that the PEAR coding standards *do not* follow Allman style for *control structures*, only for functions.
Note by: pear at alan hogan dot com
Again according to Wikipedia, it would seem that PEAR, in fact, advocates K&R style:

function foo ()
{
//do stuff();
}

while (true) {
if (true ) {
//x..
}
}

It should be noted that both Allman and K&R agree on how to format function definitions.