3

我有一个变量,包括 html 结构,如下所示:

$txt = '<table>
           <tr>
               <td>
              </td>
           </tr>
       </table>';

我想在变量中编写以下语句:

include_once('./folder/file.php');

我尝试如下编写它,但失败了:

$txt = '<table>
               <tr>
                   <td>';
                   include_once('./folder/file.php');
                  $txt.='</td>
               </tr>
           </table>';

我就这样尝试,但也不起作用:

$txt = '<table>
                   <tr>
                       <td>
                       {include_once('./folder/file.php');}
                     </td>
                   </tr>
               </table>';

我怎样才能做到这一点?很抱歉,我不是很擅长混合 php 和 html,所以我们将不胜感激?

4

3 回答 3

7

使用输出缓冲区函数:

ob_start();
include('./folder/file.php');
$include = ob_get_clean();

$txt = '<table>
           <tr>
               <td>' . $include . '</td>
           </tr>
       </table>';

http://php.net/ob

输出缓冲区收集您发送到浏览器的所有内容,直到您清空、删除或结束它。

http://www.php.net/manual/en/function.ob-get-clean.php

于 2013-10-01T12:14:02.617 回答
0

你必须这样做我相信它是调用连接:

$table_content = include_once('./folder/file.php');
$txt = '<table>
               <tr>
                   <td>
                         ' . $table_content . '
                   </td>
               </tr>
         </table>';

或者...

$txt = '<table>
               <tr>
                   <td>
                         ' . include_once('./folder/file.php') . '
                   </td>
               </tr>
         </table>';

简单地说,当我需要回显一些文本后跟一个变量时,我这样做的方式如下:

$color = brown
$state = lazy

echo "The quick" . $color . "fox jumped over the" . $state . "dog";

这将给出以下结果:

The quick brown fox jumped over the lazy dog

有关详细信息,请参阅:连接字符串

于 2013-10-01T12:14:58.303 回答
0

尝试这个

$txt = '<table>
           <tr>
               <td>';
$txt.=include_once('./folder/file.php');
$txt.='</td>
           </tr>
       </table>';
print_r($txt);   
于 2013-10-01T12:35:43.643 回答