将PHP和HTML输出存储在变量中

时间:2014-02-26 20:32:35

标签: php html

我有以下代码:

echo "Hi " . $firstName . ",  <br /><br /> text <br /> <br />";
$i = 0;
foreach ($urls as $key) {
print_r ('<a href="' . ($key) . '">');
print_r($names[$i] . "</a>");
echo "<br /> <br />";
$i++;
}
echo "text, <br /><br /> text";

这将打印出一条消息,其中包含foreach循环生成的链接列表。我想将结果存储在一个变量中(我用它作为电子邮件的正文)。

4 个答案:

答案 0 :(得分:1)

你可以这样做

$body = '';
foreach ($urls as $key) {
$body .= '<a href="' . ($key) . '">';
$body .= $names[$i] . "</a>";
$body .= "<br /> <br />";
$i++;
}

这里初始化一个var $ body并在循环内部将结果连接到body中,以便以后可以使用它。

答案 1 :(得分:0)

试试这个,这里添加了$data变量,$data .=将变量中的结果连接起来。

    $data = "Hi " . $firstName . ",  <br /><br /> text <br /> <br />";
    $i = 0;
    foreach ($urls as $key) {
        $data .='<a href="' . ($key) . '">'.$names[$i] . "</a><br /> <br />";
        $i++;
    }
    $data .="text, <br /><br /> text";      
    echo $data;

答案 2 :(得分:0)

使用前面字符串的总和来连接新字符串。

$output = "Hi $firstName,<br/><br/>text<br/><br/>";
$i = 0;
foreach ($urls as $key) {
    $output .= '<a href="' . $key . '">' . $names[$i] . "</a><br/><br/>";
    $i++;
}
$output .= "text,<br/><br/>text";
echo $output;

答案 3 :(得分:0)

我会使用ob_*函数。具体为ob_startob_get_contentsob_end_clean

在你的情况下,它将是:

ob_start();

echo "Hi " . $firstName . ",  <br /><br /> text <br /> <br />";
$i = 0;
foreach ($urls as $key) {
    print_r ('<a href="' . ($key) . '">');
    print_r($names[$i] . "</a>");
    echo "<br /> <br />";
    $i++;
}
echo "text, <br /><br /> text";

$body = ob_get_contents();
ob_end_clean();