欢迎各位兄弟 发布技术文章
这里的技术是共享的
dpm()函数综述:
dpm()函数是由Drupal的Devel模块提供的一个API,用于调试Drupal变量。当dpm()函数被调用时,使用drupal_set_message()函数在Drupal页面的message区域打印变量。
dpm()函数的原形:
1 | dpm( $input , $name = NULL, $type = 'status' ) |
dpm()函数的参数:
$input:必需,要打印输出的变量。
$name:可选,确定输出的名字。
$type:可选,为drupal_set_message()函数设定message类型,默认值为“status”。
dpm()函数的处理流程:
在dpm()函数被调用之后,首先判断用户是否拥有access devel information权限。如果拥有该权限,则将$input和$name参数通过另一个Drupal API函数kprint_r进行处理,并将处理的结果和$type参数一起交给drupal_set_message函数进行再次处理。最后返 回$input。
dpm()函数的源代码
代码位于Drupal Devel模块的devel.module文件中第1689行。
1 2 3 4 5 6 7 | function dpm( $input , $name = NULL, $type = 'status' ) { if (user_access( 'access devel information' )) { $export = kprint_r( $input , TRUE, $name ); drupal_set_message( $export , $type ); } return $input ; } |
dpm()函数使用范例
本例在Drupal mytheme主题的template.php文件中的mytheme_preprocess_block主题预处理函数中调用dpm()函数。
1 2 3 | function mytheme_preprocess_block(& $variables ) { dpm( $variables ); } |