>  기사  >  백엔드 개발  >  怎么做到检测文件是否存在,然后返回一段话

怎么做到检测文件是否存在,然后返回一段话

WBOY
WBOY원래의
2016-06-13 12:54:052307검색

如何做到检测文件是否存在,然后返回一段话
 $file = 'path/1.txt';
  if (file_exist($file)){
   echo "文件存在";
}
 else
{
  echo "文件不存在"
}


  //每20S刷新一次


?>

 这里实现的效果是 

1.假设文件存在
     显示 :文件存在
  但是一旦刷新就还是几个字
  然后我想要实现的是

  能够让他能够换行在原来的基础上面在输入
  例如  :假设我这里在家一个time函数
        他能够实现功能为
   11:12:13  文件存在
    11:12:33   文件存在 
  11:12:55   文件被删除 。
   有点类似于日志一样的。
  


------解决方案--------------------
刷新当然是全页面刷新的,想接续就用ajax

你这个有点聊天室的意味了
------解决方案--------------------
可以用js,js定时ajax请求后端,判断一下然后返回结果。
------解决方案--------------------
暂时想到一个用session,当然你也可以用js定时ajax请求php。
session_start();
 $file = 'path/1.txt';

  if (file_exists($file)){
   $_SESSION['info'][]= date('H:i:s')." 文件存在
";
}
 else
{
   $_SESSION['info'][]=date('H:i:s')." 文件不存在
";
}
echo implode('
',$_SESSION['info']);
?>

------解决方案--------------------
楼主怎么描述问题逻辑乱七八糟的。文件不存在到底是显示文件被删除还是文件不存在???

不就是为了hold住每一次文件监测的状态并都能显示出来嘛,把检测文件状态打份log,然后每次从log中把内容读出来。




//日志存放目录,修改成一个在你电脑上存在并且可写的目录
$logpath = '/tmp';

if( !is_writable($logpath) ){
die('日志目录不可写!请change mod!');
}

$logfile = $logpath . '/' . 'check_file_log';
$file = 'path/1.txt';
$time = date('H:i:s');

if(file_exists($file)){
$log = "文件存在
";
}
else{
$log = "文件被删除
";
}

file_put_contents( $logfile, $time . " " . $log, FILE_APPEND );

echo file_get_contents( $logfile );
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.