如何返回两个输出 - Drupal

时间:2014-02-03 08:04:41

标签: php drupal

我有问题。 我创建了一个返回输出的函数。 我的问题是如何在一个页面上返回两个输出。在函数内部我有两个db_query。第一个给我老师信息

$temp = '';
    foreach($result as $item) {             
        $temp .= '<b>About teacher | </b>'. $item->title  .' '. $item->name .' '. $item->lname  .' , ' . $item->xyz .' <br />';
        $temp .= '<br/>';
        $temp .= '<b>E-mail | </b>' . $item->email  . '<br />';
        $temp .= '<br/>';
        if ($item->tel > "")
        {
            $temp .= '<b>Phone |  </b>'. $item->tel .''. $item->tele . '<br />';
            $temp .= '<br/>';
        }
        if ($item->cell > "")
        {
            $temp .= '<b>Mobile phone |  </b>'. $item->call .''. $item->cell . '<br />';
            $temp .= '<br/>';
        }               
    }

另一个返回一个表,我使用

    $output = theme('table', array('header'=> $header, 'rows' => $rows, 'empty' => t("None")));

现在我使用

return $temp;
return $output;

它只返回一个“输出”。如果$ temp如果首先它返回关于教师,如果$ output是第一个,那么它将呈现没有教师信息的表。

2 个答案:

答案 0 :(得分:2)

这与Drupal无关,但是是通用的PHP。 PHP(以及几乎所有语言)的返回意味着“使用此值返回调用者”。这意味着返回后的代码运行never

return "foo";
print "I am never ran";

在您的情况下,您希望将两个字符串粘合在一起。

return $temp . $output;

点,连接两个字符串。并使它们成为一个字符串。

答案 1 :(得分:0)

你可以把它作为数组返回。

$ t_array ['v1'] = $ temp;

$ t_array ['v2'] = $ output;

返回$ t_array;