使用php清除文本文件的内容

我有一个filelist.txt文件

我创buildclear.php文件来清除文件列表的内容

在index.html我把一个button来调用clear.php清除

任何人都可以帮我解决:

我应该在clear.php中写什么样的PHP代码

如何编写一个button来调用clear.php,然后返回到index.html,显示已被清除的结果?

谢谢

file_put_contents ("filelist.txt", ""); 

您可以使用header()函数来redirect,以修改位置标题。

这会截断文件:

 $fh = fopen( 'filelist.txt', 'w' ); fclose($fh); 

在clear.php中,通过使用$_SERVER['HTTP_REFERER']值redirect到调用者页面。

 //create a file handler by opening the file $myTextFileHandler = @fopen("filelist.txt","r+"); //truncate the file to zero //or you could have used the write method and written nothing to it @ftruncate($myTextFileHandler, 0); //use location header to go back to index.html header("Location:index.html"); 

我不完全知道你想在哪里显示结果。

要添加button,您可以使用jQuery库或简单的JavaScript脚本,如下所示:

HTML链接或button:

 <a href="#" onClick="goclear()" id="button">click event</a> 

使用Javascript:

 <script type="text/javascript"> var btn = document.getElementById('button'); function goclear() { alert("Handler called. Page will redirect to clear.php"); document.location.href = "clear.php"; }; </script> 

使用PHP来清除文件内容。 例如你可以使用fseek($ fp,0); 或者ftruncate(resource $ file,int $ size)如下:

 <?php //open file to write $fp = fopen("/tmp/file.txt", "r+"); // clear content to 0 bits ftruncate($fp, 0); //close file fclose($fp); ?> 

redirectPHP – 你可以使用header(string $ string [,bool $ replace = true [,int $ http_response_code]])

 <?php header('Location: getbacktoindex.html'); ?> 

我希望这是帮助。

试试fopen() http://www.php.net/manual/en/function.fopen.php

w作为模式将截断文件。

使用'w'而不是'a'

 if (!$handle = fopen($file, 'w')) 
  $fp = fopen("$address",'w+'); if(!$fp) echo 'not Open'; //----------------------------------- while(!feof($fp)) { fputs($fp,' ',999); } fclose($fp);