我如何使用PHP保存rtf文件?

时间:2011-06-21 23:19:02

标签: php file save rtf

$rtf=<<<RTF
    {\rtf1
    \b [TITLE] \b0\par
    \b [MESSAGE] \b0\par
    }
RTF;

$rtf = str_replace('[TITLE]',$valueTitle,$rtf);
$rtf = str_replace('[MESSAGE]',$valueMessage,$rtf);

在我完成如上所述在php中编辑rtf文件之后,如何在特定位置保存它以供人们下载?

2 个答案:

答案 0 :(得分:5)

您可以使用file_put_contents()保存,只需提供下载链接,并附上相应的标题。

// $rtf holds your complete file data
file_put_contents('/path/to/outfile.rtf', $rtf);

然后你可以直接下载它们,或者像这样使用正确的标题提供它们,如果你需要额外的处理或访问保护或其他东西,那么它很有用......

header("Content-type: application/rtf");
echo file_get_contents("/path/to/outfile.rtf");
exit();

答案 1 :(得分:1)

找到了我已经完成此操作的旧文件,所以这就是我现在使用的确切工作代码。

$rtf= file_get_contents('result.rtf');

$rtf = str_replace('[nickname]', $nickname, $rtf);
$rtf = str_replace('[secretWord]', $secretWord, $rtf);
$rtf = str_replace('[hoursInADay]', $hoursInADay, $rtf);
$rtf = str_replace('[hobby]', $hobby, $rtf);
$rtf = str_replace('[hobbyYears]', $hobbyYears, $rtf);
$rtf = str_replace('[hobbyAlphabet]', $hobbyAlphabet, $rtf);
$rtf = str_replace('[jokeFact]', $jokeFact, $rtf);

header('Content-type: application/msword');
header('Content-Disposition: attachment; filename=survey_result.rtf');
echo $rtf;
die();