【问题标题】:Prepending this PHP File预先添加此 PHP 文件
【发布时间】:2015-05-08 10:25:27
【问题描述】:

我在尝试用 PHP 前置这个文档时有点卡住了。 请参阅下面的代码本身。

<?php

if(isset($_POST['inputTitle']) && isset($_POST['inputDate']) && isset($_POST['inputLink'])) {
      $data = "<item>" . "\r\n" . "<title>" . $_POST['inputTitle'] . "</title>" . "\r\n" . "<description>" . $_POST['inputDate'] . "</description>" . "\r\n" . "<link>" . $_POST['inputLink'] . "</link>" . "\r\n" . "</item>" . "\r\n" . "\r\n";
    $ret = file_put_contents('filename.rss', $data, FILE_APPEND | LOCK_EX);
    if($ret === false) {
        die('There was an error writing this file');
    }
    else {
        echo "<b>Thank you for adding a news item.</b> <br />";
        echo "If this news item does not appear on the application, please contact IT Support including a screenshot of this webpage. <br />";
        echo "<br />";
        echo "<br />";
        echo "###################### <br />";
        echo "$ret bytes written to file. <br />";
        echo "###################### <br />";

    }
}
else {
   die('no post data to process');
}   
?> 

此代码目前适用于写入文件底部,但我想添加到文件顶部。

我实际上是在手动创建一个 RSS 提要,并使用我的 iOS 应用程序在读取它们时从上到下对它们进行排序。

【问题讨论】:

标签: php rss prepend


【解决方案1】:

如果我理解正确,并且如果您想在文件顶部添加内容,则需要先获取文件的内容;

$content = file_get_contents("filename.rss");

获得内容后,您可以像这样创建新内容;

$data = "<item>" . "\r\n" . "<title>" . $_POST['inputTitle'] . "</title>" . "\r\n" . "<description>" . $_POST['inputDate'] . "</description>" . "\r\n" . "<link>" . $_POST['inputLink'] . "</link>" . "\r\n" . "</item>" . "\r\n" . "\r\n";

$content = $data.$content;

稍后保存文件;

$ret = file_put_contents("filename.rss", $data, LOCK_EX);

暂时替换这一行;

$ret = file_put_contents('filename.rss', $data, FILE_APPEND | LOCK_EX);

有了这个;

$content = file_get_contents("filename.rss");
$ret = file_put_contents("filename.rss", $data.$content, LOCK_EX);

【讨论】:

  • 我的荣幸。祝您项目顺利。
  • 而且由于某种原因,它不再工作了......!代码可以在这里找到 - pastebin.com/VK6WMMS5
  • 试试这个; pastebin.com/DdDCUE6P(我直接编辑了你的代码)你覆盖了$content
  • 嗯,这就到了。现在输出是每个“帖子”的 2 个副本 - 编辑:已修复、调整第 13 行并删除了“数据”。 :-)
  • @GlenRitchie 很高兴你解决了这个问题 :) 祝你一切顺利。
猜你喜欢
  • 1970-01-01
  • 2013-01-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-01
  • 2015-02-12
  • 2015-12-09
  • 1970-01-01
相关资源
最近更新 更多