-3

我得到了这个代码,我想要 2 个回报,正确的方法是什么?(PHP)

function two_tables($atts, $content = null) {

        return '<div id="table1"><table class="table table-bordered">'.$content.'</table></div>';

        return '<div id="table2"><table class="table table-bordered">'.$content.'</table></div>';
}
4

5 回答 5

1

简而言之,不,你不能返回两次,函数在第一次之后退出

但是,这可能会满足您的要求:

function two_tables($atts, $content = null) {
    return '<div id="table1"><table class="table table-bordered">'.$content.'</table></div>
    <div id="table2"><table class="table table-bordered">'.$content.'</table></div>';
}

这是组合在一起的两个输出。

于 2013-01-25T00:37:29.137 回答
1

如果您希望能够分别使用它们,您总是可以返回一个包含这两个项目的数组。

function two_tables($atts, $content = null) {

    $one = '<div id="table1"><table class="table table-bordered">'.$content.'</table></div>';

    $two = '<div id="table2"><table class="table table-bordered">'.$content.'</table></div>';
    return array($one, $two);
}

这样,当您收到功能时,您就可以这样做。

$result = two_tables($blah, $blah);
echo $result[0]; //the first return..
echo $result[1]; //the second return
于 2013-01-25T00:40:59.617 回答
1

除了亚历克斯的回答,如果你想把它们分开,你可以把它们放在一个数组中。

return array(
    '<div id="table1"><table class="table table-bordered">'.$content.'</table></div>', 
    '<div id="table2"><table class="table table-bordered">'.$content.'</table></div>'
);
于 2013-01-25T00:41:43.690 回答
0

此函数将始终返回 HTML 的第一行。

返回两个 s :

function two_tables($atts, $content = null) {
        return '<div id="table1"><table class="table table-bordered">'.$content.'</table></div><div id="table2"><table class="table table-bordered">'.$content.'</table></div>';
}
于 2013-01-25T00:38:04.870 回答
0

为了返回多个元素,您只需要返回一个数组,如下所示:

return array(
    '<div id="table1"><table class="table table-bordered">'.$content.'</table></div>', 
    '<div id="table2"><table class="table table-bordered">'.$content.'</table></div>'
);

如果您希望元素在返回时被专门引用,而不是在一个简单的数组中,您可以在调用函数时请求它们,如下所示;

list($table1, $table2) = two_tables($atts, $content = null);

然后要使用它们,您只需调用:

echo $table1;

// some other code here

echo $table2;
于 2013-01-25T03:05:27.963 回答