当前位置: 首页 > 知识库问答 >
问题:

使用PHP中的参考文件创建一个文件

齐磊
2023-03-14

我有两个文件。

  1. source.txt
name: foo
dob: ---
name: foo
dob: 11-Aug-2017

name: bar
dob: 15-Aug-2017

生成文件target.txt

name: foo
dob: 11-Aug-2017

source.txt中搜索字符串,如name: NAME,并在reference.txt文件中匹配它并替换它。

搜索

name: foo
dob:

替换为

name: foo
dob: 11-Aug-2017

我尝试了以下代码搜索目标字符串名称: foo。但是,无法生成预期的输出。

$url = 'reference.txt';

if( is_file( $url ) ) {

    $handle = fopen( $url, "r");

    if ($handle) {
        while (($line = fgets($handle)) !== false) {

            if( substr($line, 0, strlen('name: foo')) === 'name: foo' ) {
                // Found record 'name: foo'
            }
        }

        fclose($handle);
    }
}

共有1个答案

姜良哲
2023-03-14

顺便说一句,我没有得到您想要的确切信息,但这个示例可能有助于您在文件中搜索字符串:

 <?php
    $searchthis = "mystring";
    $matches = array();

    $handle = @fopen("path/to/inputfile.txt", "r");
    if ($handle)
    {
        while (!feof($handle))
        {
            $buffer = fgets($handle);
            if(strpos($buffer, $searchthis) !== FALSE)
                $matches[] = $buffer;
        }
        fclose($handle);
    }

    //show results:
    print_r($matches);
    ?>
 类似资料:
  • 问题内容: 我已经使用以下代码获取wp-option值。 现在我想使用上述值创建一个.sql文件。如何使用这些值创建.sql文件。 问题答案: 您必须生成create table并手动插入语句。这里有一篇很好的文章,其中包含用PHP编写的备份脚本。 http://davidwalsh.name/backup-mysql-database- php

  • 问题内容: 我想在此处创建的文件夹中创建一个文本文件。 但是此代码不会将文本文件创建到该文件夹​​中。而是将文本文件放置在该文件夹之外。 问题答案: java.io.File的构造函数之一带有一个父目录。您可以改为:

  • 问题内容: 我想创建一个csv文件,但是当我运行代码时,它返回一个空白页,没有csv文件。我使用PHP5。我使用以下代码: 谢谢! 问题答案: 其空白,因为您正在写信。您应该写到using 代替,还应该发送标头信息以表明它是csv。 例

  • 问题内容: 我一直在阅读和谷歌搜索,但似乎找不到这个简单的答案。 我有一个读取文件的功能,但是如果文件不存在,则会出现混乱。我想做的是一个函数,该函数在读取之前会检查文件是否存在,如果不存在,则会创建一个空文件。这就是我所拥有的。 问题答案: 不要尝试先检查是否存在,因为如果同时创建了文件,那么您将面临一场竞赛。您可以打开带有标志的文件以创建该文件(如果不存在):

  • 问题内容: 似乎在matplotlib中创建图形的标准方式不像我在python中所期望的那样:默认情况下,在循环中调用将保留所有创建的图形,最终耗尽内存。 有相当 一 小,其处理的解决方法职位,但需要显式调用似乎有点hackish。我想要的是一种使引用计数的简单方法,因此我不必担心内存泄漏。有什么办法可以做到这一点? 问题答案: 如果您不使用来创建图形,则应按预期对它进行引用计数。例如((这也使用

  • 在我的Linux机器上,我希望创建某个文件夹的.tar.bz2文件。一旦我将自己放入该文件夹(在终端中),我在终端命令行中键入什么来将压缩文件夹放入我机器的主目录? 假设我在文件夹中 /home/user/folder.在文件夹“文件夹”中有几个文件(txt、. c等)。如何压缩该类型的文件夹。tar.bz2并将其放在我的 /home目录中? 在/home/user/folder中,我尝试了< c