【问题标题】:Is possible multiples returns?是否可能返回倍数?
【发布时间】:2013-01-08 22:08:21
【问题描述】:

我得到了这个代码,我想要 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>';
}

【问题讨论】:

  • omg,还有人为我工作,我想要单独的代码

标签: php html return


【解决方案1】:

简而言之,不,你不能返回两次,函数exits after the first one

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

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>';
}

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

【讨论】:

    【解决方案2】:

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

    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
    

    【讨论】:

      【解决方案3】:

      除了 Alex 的回答之外,如果您想将它们分开,您可以将它们以数组的形式返回。

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

      【讨论】:

        【解决方案4】:

        此函数将始终返回 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>';
        }
        

        【讨论】:

          【解决方案5】:

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

          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;
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-10-26
            • 1970-01-01
            • 2010-09-29
            • 2019-10-25
            • 2019-02-25
            • 1970-01-01
            相关资源
            最近更新 更多