有没有办法将这段代码保存到PHP变量中?这样做的原因是因为我想通过mail()
echo 'MONDAY<BR>';
query_posts('meta_key=Date1&meta_value=MONDAY');
while (have_posts()):
the_post();
if (in_category( '11' )) {
echo get_post_meta($post->ID, 'HomeSlogan', true);
} else {
the_title();
}
echo'<br>';
endwhile;
这是zneak建议的
<?php
ob_start();
echo 'MONDAY<br>';
query_posts('meta_key=Date1&meta_value=MONDAY');
while (have_posts()):
the_post();
if (in_category( '11' )) {
echo get_post_meta($post->ID, 'HomeSlogan', true);
} else {
the_title();
}
echo'<br>';
endwhile;
$mail = ob_get_contents();
echo $mail;
ob_end_clean();
?>
答案 0 :(得分:1)
您可以使用字符串连接并完全避免使用echo
,也可以使用输出缓冲。输出缓冲将脚本的输出保存到缓冲区而不是将其发送到浏览器,因此如果您具有打印文本并且无法真正控制的功能,则更容易使用。
// concatenation
$mail = 'MONDAY<br>';
$mail .= 'more text';
$mail .= 'yet more text';
// output buffering
ob_start();
echo 'MONDAY<br>';
echo 'more text';
echo 'yet more text';
$mail = ob_get_contents();
ob_end_clean();
对于输出缓冲,您可能需要阅读ob_start,ob_get_contents和ob_end_clean。