我想用javascript / php每X小时清除一个日志文件?这是否可行,如果可以,您是否可以帮助设计运行此代码所需的代码?谢谢。
答案 0 :(得分:4)
我假设您更喜欢涉及PHP的答案,因为日志通常不会保存在JavaScript中,我假设您在客户端中指的是 - 背景。
一个简单的file_put_contents
即可。
file_put_contents('/the/path/of/your/log/file.log', '');
为了完整起见,您将使用fs.writeFile
在node.js中完成相同的操作。
fs.writeFile("/the/path/of/your/log/file.log", "");
答案 1 :(得分:1)
如果日志文件在网络服务器上,你不能直接用javascript做,你必须用php做,尽管你可以从javascript调用相应的php-site。
使用以下命令删除php中的文件:
unlink('your_file_name.log');
http://www.php.net/manual/de/function.unlink.php
最简单的方法是设置一个cronjob来做到这一点,如果没有办法在你的网站空间上运行cronjob,但是,下一个最好的选择是检查文件的年龄在每个网站上访问并删除它,如果它超过$ x小时。这可以通过filectime()获取文件创建时间戳并将其与time()返回的当前时间戳进行比较来完成。如果差异超过$ x小时,请取消链接。
$filename = '/path/to/your/file.log';
if(time() - filectime($filename) > $x * 3600) unlink($filename); // multiply by 3600 'cause times are in seconds