PHP - 如果文件存在,则将数据写入新文件,并在 foreach 循环中调用生成文件的每一行

标签 php

我有一段PHP代码如下:

$write_URLs = fopen("links/WriteURLs.txt", "w");
foreach ($list_URLs as $htmlLink) {
    GetURLs ($htmlLink);
    foreach ($URLs as $URL) {
    fwrite($write_URLs, $URL ."\n");
    }
}
fclose($write_URLs);

上述代码每次执行时都会将 URL 写入 links/WriteURLs.txt 上,因此 WriteURLs.txt 文件无法保存结果之前的执行。

问题是我想检查 links/WriteURLs.txt 是否存在,然后开始将 URL 写入新文件,例如 links/01- WriteURLs.txtlinks/02-WriteURLs.txt、... .之后,我想开始从生成的文件中读取 URL(即不是所有文件,仅是上一步中生成的文件)links/WriteURLs.txtlinks/01- WriteURLs.txtlinks/02-WriteURLs.txt 或 ...,并为每个 URL 回显 HELLO WORLD。下面您可以看到我尝试开发的代码的不完整版本。你能帮我解决这个问题吗?谢谢

$i = 1;
$write_URLs = fopen("links".DIRECTORY_SEPARATOR. $i. "-WriteURLs.txt", "w");
if(file_exists($write_URLs)) {
    fclose($write_URLs);
    $new_write_URLs = fopen("links".DIRECTORY_SEPARATOR. $i++. "-WriteURLs.txt", "w");
} else {
    foreach ($list_URLs as $htmlLink) {
        GetURLs ($htmlLink);
        foreach ($URLs as $URL) {
        fwrite($new_write_URLs, $URL ."\n");
        }
    }    
}
fclose($new_write_URLs);
$trimmed = file(???????????, FILE_IGNORE_NEW_LINES);
foreach ($trimmed as $URL) {
    echo "Hello World";
}

最佳答案

如果您想从刚刚完成写入的文本文件中读取数据,您可以简单地跟踪正在使用的文件的名称,然后在稍后的读取过程中使用它,如下所示:

$i = 0;
do {
  $filename = "links".DIRECTORY_SEPARATOR . $i++ . "-WriteURLs.txt";
} while (file_exists($filename));

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

foreach ($list_URLs as $htmlLink) {
      $URLs = GetURLs ($htmlLink);
      foreach ($URLs as $URL) {
      fwrite($write_URLs, $URL ."\n");
    }
}    

fclose($write_URLs);
$trimmed = explode("\n",file_get_contents( $filename ) );
foreach ($trimmed as $URL) {
    echo "Hello World";
}

关于PHP - 如果文件存在,则将数据写入新文件,并在 foreach 循环中调用生成文件的每一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24637200/

相关文章:

php - 如何在专用服务器上的PHP + MySQL应用程序上识别并微调性能瓶颈?

php - 我无法让表单数据进入数据库。我究竟做错了什么?

javascript - 在 JQuery 中构建 div 结构并追加到另一个 Div

php - 如何将图像从文件夹保存到数据库

php - 在 php mysql 中按当前日期、周和月获取记录不起作用

php - fatal error : Uncaught Error: Unsupported operand types

javascript - 根据选项值自动选择

php - 在 Ubuntu Linux 12 中启用 Excel PHP PDO 驱动程序

php - 将可变数量的参数传递给 php 函数的最佳方法

Java 客户端 POST 到 php 脚本 - 空 $_POST