用PHP中的参考文件建立一个文件

问题描述:

我有2个文件。用PHP中的参考文件建立一个文件

  1. source.txt
  1. reference.txt
  2.  
    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 
    

    我曾尝试下面的代码,其搜索目标字符串name: 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); 
        } 
    } 
    
开始=>

顺便说一句,我没有得到你想要什么,但 这个例子,可以帮助你在一个文件中搜索字符串:

<?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); 
    ?> 
+0

其实我想从1个文件替换多行成另一个。 – maheshwaghmare

+0

啊所以你可以使用str_replace(),我想这是解决方案突然尝试它 –