You are here

Drupal专业开发指南 第21章 函数调用

函数调用

    在函数调用中,在操作符(=, <, >,等等)的两边应该各有一个空格,而在函数名和函数的开括号“(”之间则没有空格。在函数的开括号“(”和它的第一个参数之间也没有空格。中间的函数参数使用逗号和空格分隔,在最后一个参数和闭括号“)”之间没有空格。下面的例子说明了这几点:
 
错误的
$var=foo ($bar,$baz);
 
正确的
$var = foo($bar, $baz);
 
    这个规则也存在例外的情况。在一个包含多个相关赋值语句的区块中,如果能够提高可读性,那么可以在赋值操作符周围插入更多空格:
 
$a_value       = foo($b);
$another_value = bar();
$third_value   = baz();
 
函数声明
    在函数的名字和它的开括号“(”之间没有空格。在编写函数时,如果它的有些参数需要使用默认值,那么需要把这些参数列在后面。还有,如果你的函数生成了任何有用的数据,那么你需要返回该数据,以供调用者使用。下面给出了一些函数声明的例子:
 
错误的
function foo ($bar = 'baz', $qux){
    $value = $qux + some_function($bar);
}
 
正确的
function foo($qux, $bar = 'baz') {
    $value = $qux + some_function($bar);
    return $value;
}
 
函数名字
    在Drupal中,函数的名字都是小写的,并基于模块的名字或者它们所属系统的名字。这个习惯避免了命名空间冲突。下划线用来分隔函数名字的描述性部分。在模块名的后面,应该紧跟一个动词,接着是动词作用的对象:modulename_verb_object()。在下面的第一个例子中,函数名字没有正确的使用模块前缀,并且动词和它的对象颠倒了。在接下来的例子中,很明显,修正了这些错误。
 
错误的
function some_text_munge() {
    ...
}
 
正确的
function mymodule_munge_some_text() {
    ...
}
 
    私有函数与其它函数一样,遵守相同的习惯,不过它在函数名字前面加了一个下划线。
 老葛的Drupal培训班 Think in Drupal

Drupal版本: