【问题标题】:Trouble creating files php无法创建文件 php
【发布时间】:2013-08-15 18:24:52
【问题描述】:

我已经尝试了所有我知道的方法:

<?php
   DOMDocument::saveHTMLFile($filename);
?>

,

<?php 
    fopen(); //I tried all the options and modes.
    fwrite();
    fclose();
?>

<?php
   file_put_contents($filename, $data);
?>

让我不安的是,这三种方式都将写入的字节返回给我,就好像文件已经创建一样,但是当我搜索该文件时,它根本不存在。

有人知道吗?

实际代码:

-fopen 尝试:

<?php$
   $filename = $_SERVER['DOCUMENT_ROOT'] . '/view/pages/' . $pageName . '.html';
   file = fopen($filename, 'x');
   $save = fwrite($file, $this->topicData['html']);
   fclose($file);
   if($save) return 1;
   else return "Error";
?>

-saveHTMLFile 尝试:

<?php
   $filename = $_SERVER['DOCUMENT_ROOT'] . '/view/pages/' . $pageName . '.html';
   $doc = new DOMDocument();
   $doc->loadHTML($this->topicData['html']);
   if ($doc->saveHTMLFile($filename)) return 1;
   else return "Error";
?>

-file_put_contents 尝试:

<?php
   $filename = $_SERVER['DOCUMENT_ROOT'] . '/view/pages/' . $newPage . '.html';
   if(file_put_contents($filename, $this->topicData['html'])) return 1;
   else return 'Error';
?>

它们都返回 1,但没有真正创建文件。

【问题讨论】:

  • 你使用的是绝对路径还是相对路径?
  • 我使用了绝对路径。我将发布代码。
  • 我使用了那个路径:$_SERVER['DOCUMENT_ROOT']./dir/file.html
  • 你能展示你的实际代码吗?

标签: php file fopen


【解决方案1】:

谢谢大家。

问题出在代码的另一部分,它处理将要创建的文件的名称。所以,它正在覆盖文件,我无法找到我正在搜索的名称的文件。

不过谢谢大家,已经解决了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多