使用php脚本创建html文件

时间:2013-10-16 11:53:03

标签: php

我想创建一个php脚本来检查某个html文件是否存在。如果它不存在,则创建一个新名称并为其命名。

我已尝试过以下代码,但仍然无效。

$file = file_get_contents(site_url('appraisal/createReport'));      
$filename = 'Service_delivery_report_'.date('Y-m-d', time()).'.html';
$filepath = dirname(__DIR__).'/views/sd_reports/'.$filename;
write_file($filepath, $file);

4 个答案:

答案 0 :(得分:2)

if(! file_exists ($filename))
  {
  $fp = fopen($filename, 'w');
  fwrite($fp,  $file);
  fclose($fp);
  }

答案 1 :(得分:1)

我不熟悉您使用的名为'site_url'的方法。从快速谷歌搜索看起来它是Word Press中的一种方法。忽略site_url方法,您可能希望使用特定网址进行测试,例如http://ted.com。我已指定is_file而不是file_exists,因为即使您指定的路径是目录,file_exists也将返回true,而如果路径是实际文件,则is_file将仅返回true。尝试使用此代码,将$ site变量设置为站点URL或文件路径。

我还切换了一些代码,在尝试读取$ site的内容之前首先检查文件是否存在。这样,如果文件已经存在,那么您不必不必要地阅读$ site的内容。

$filename = "Service_delivery_report_" . date("Y-m-d",
                                              time()). ".html";

$filepath = realpath("./") . "/views/sd_reports/" . $filename;

if (!is_file($filepath))
{
    $site = "http://somesite.com/somepage";

    if ($content = file_get_contents($site))
    {   
        file_put_contents($filepath,
                          $content);    
    }
    else
    {
        echo "Could not grab the contents of some site";
    }
}

答案 2 :(得分:0)

使用file_exists();

<?php
$filename = '/path/to/foo.txt';

if (file_exists($filename)) {
    echo "The file $filename exists";
} else {
    echo "The file $filename does not exist";
}
?>

然后,如果它不存在,请创建一个fopen();的文件,如下所示:

$handle = fopen($filename, "w");

答案 3 :(得分:0)

试试这个

$file = file_get_contents(site_url('appraisal/createReport'));      
$filename = 'Service_delivery_report_'.date('Y-m-d', time()).'.html';
if(! file_exists ($filename))
{
$f = fopen($filename, "w");
fwrite($f,  $file);
fclose($f);
}
else
echo "file already exist";