我想邮寄一个看起来像的网页内容:
<html>
<body>
<?php
function sendPageContentToEmail($destEmail)
{
ob_start();
$buffer = ob_get_contents();
ob_end_clean();
$subject = 'Subject name';
mail($destEmail, $subject, $buffer);
}
?>
<div style="width:400px; margin:0 auto;">
<p>
Name: <?php print($customerData['customer_name']); ?>
</p>
<p>
....
</p>
</div>
</body>
</html>
<?php
sendPageContentToEmail($customerData['customer_email']);
//erase all temp data
session_destroy();
?>
$ buffer始终为空(ob_get_content()),无论sendPageContentToEmail()的调用位置如何。 应该在哪里调用此函数(假设它是正确的方法)?
答案 0 :(得分:2)
ob_start的作用是开始缓存所有输出,因此,如果在调用之前输出内容,则不会缓存该部分。
刚开始时,在<html>
执行<?php ob_start(); ?>