用php创建.html文件

时间:2015-02-02 18:21:05

标签: php

我想使用php脚本创建一个新的.html文件,因为我是php的新手,我不明白这样做。 我创建了一个代码,但它没有用。

<?php
$filename = '/path/to/foo.html';
if (file_exists($filename)) {
echo "The file $filename exists";
} else {
  echo "The file $filename does not exist";
}?>

我希望当我加载页面时,应该在我的路径/目录中创建一个新的.html文件,其中包含一些条目,例如我的html文件中的标题e.t.c

谁能帮助我?

3 个答案:

答案 0 :(得分:3)

最好的方法是写一个小的空白html文件并将其保存在某个地方;例如“template.html”

1)在PHP中你可以用

来阅读它
$newcontent = file_get_contents("template.html");

2)用fopen打开一个新文件,写新内容,关闭文件。完成。

if (!file_exists('newname.html')) { $handle = fopen('path/to/new/file/newname.html','w+'); fwrite($handle,$newcontent); fclose($handle); }

答案 1 :(得分:1)

因此,创建新文件有两个部分:

  • 创建内容
  • 创建自己的文件

首先,您需要创建该文件的内容。在这里,您可以组合HTML和PHP代码。例如

$TagCode = '<body>'.$Content.'</body>';

或使用nay模板引擎或代码生成器 - 并将生成的代码保存到您将用作创建文件内容的任何变量中。

然后你可以创建自己的文件:

$File = fopen($Filename, $Mode);

,其中

`$Filename` means name of generated file (including its path)
`$Mode` means mode of file generation

两个参数也可以直接传递(例如fopen('file.ext', 'a')

写文件内容如下

$Status = fwrite($File, $TagCode);

然后文件关闭。

fclose($File);

这就是全部 - 除非您控制文件是否正确创建(然后您使用该函数fwrite返回TRUE或FALSE - 您存储在任何变量中 - 它比直接检查更好。)

if($this -> Content === FALSE)
{
        ... /* error handling */
}

有以下打开文件的方式

  • a - 文件内容不会被覆盖;仅用于添加内容;新内容位于旧内容之下
  • a + - 文件内容不会被覆盖;添加/阅读内容;新内容位于旧内容之下
  • r - 文件内容可能只能读取
  • r + - 文件内容未被覆盖;用于添加/读取内容;新内容位于旧内容之上
  • w - 文件内容被覆盖,仅用于添加内容
  • w + - 文件内容被覆盖;添加/阅读内容

相反,函数fopenfwritefclose也可以用file_puts_content,但我更喜欢fopen,fwrite和fclose。

答案 2 :(得分:1)

$text = "Text you want to add to your file";
file_put_contents('template.html', $text, FILE_APPEND | LOCK_EX);