我有这个脚本
<?php
include 'theme.php';
/*ceklogin();*/
css();
if($_POST['wget-send'])
{
$dir=$_POST['dir'];
$link=$_POST['link'];
exec('touch /root/wget/wget-download-link.txt',$out);
exec('echo "'.$link.'" >> /root/wget/wget-download-link.txt',$out);
exec('echo "'.$dir.'" > /root/wget/wget-dir.txt',$out);
echo $out[2];
exit();
}
它目前正在使用shell将内容写入文件,我的问题是,如何将内容保存到只有PHP的文件中?既然那些shell脚本给我一个我无法解决的错误,我只想使用PHP将内容保存到文件中并摆脱shell脚本。请注意,我的内容包含以下换行符:
text1
text2
text3
我希望保留换行符,这意味着不希望它们像这样保存
text1 text2 text3
我该怎么做?
答案 0 :(得分:1)
您应该使用file_put_contents()功能。
答案 1 :(得分:1)
该代码效率很低。启动shell只有 NO 点,只是为了将一些文本回显到文件中。为什么不:
file_put_contents('/root/wget/wget-download-link.txt', $link);
file_put_contents('/root/wget/wget-dir.txt', $dir);
要输出多行/复杂文本,只需在in-ram中构建它:
$text = 'foo';
$text .= 'bar';
$text .= long_ugly_generation_sequence();
etc..
file_put_contents(..., $text);