【问题标题】:PHP replace text based on text from filePHP根据文件中的文本替换文本
【发布时间】:2013-03-22 09:43:57
【问题描述】:

我有 textfile.txt:

aaa
bbb
...
zzz

我想根据 textfile.txt 中的文本删除一些文本

ex: we have aaa files ==> we have files

我的代码仍然无法正常工作:

<?php
$fp = @fopen("textFile.txt", 'r'); 
$array = explode("\n", fread($fp, filesize("textFile.txt")));

if (isset($_POST['btcari'])){    
    print_r(str_ireplace($array,"", $_POST['tateks']));
}
?>

感谢你的赞赏

【问题讨论】:

    标签: php text replace


    【解决方案1】:

    试试这个:

    $array = file("textFile.txt");
    
    function _trim( &$value, $key ) {
        $value = trim( $value );
    }
    
    // remove the newlines and extra spacing
    array_walk( $array, '_trim' );
    
    $replaceArray = array_fill( 0, count($array), '' );
    
    if( isset( $_POST[ 'btcari' ] ) ) {
        echo str_replace( $array, $replaceArray, $_POST[ 'tateks' ] );
    }
    

    希望对你有帮助。

    【讨论】:

    • @user2192076 如果对您有帮助,请标记为正确答案。
    【解决方案2】:

    首先读取文件并更改其中的文本。然后将新内容写入文件。

    $fp = @fopen("textFile.txt", 'r'); 
    $array = explode("\n", fread($fp, filesize("textFile.txt")));
    fclose($fp);
    
    foreach($array as $text) {
    
    $textall .= str_replace("aaa", "", $text);
    
    }
    
    
    $fh = fopen("textFile.txt", "w") or die("Could not open log file.");
    fwrite($fh, $textall) or die("Could not write file!");
    fclose($fh);
    

    【讨论】:

      【解决方案3】:

      你可以使用 preg_replace

          $replace = "/".$_POST['tateks']."/";
          $array = preg_replace($replace , '' , $array);
          print_r($array);
      

      【讨论】:

        【解决方案4】:

        您似乎使用了错误的 post 参数进行替换。我尝试了代码,如果您使用 $_POST[btcari'] 而不是 $_POST['tateks'],它可以正常工作。

        <?php
        $fp = @fopen("textFile.txt", 'r'); 
        $array = explode("\n", fread($fp, filesize("textFile.txt")));
        
        if (isset($_POST['btcari'])){    
            print_r(str_ireplace($array,"", $_POST['btcari']));
        }
        ?>
        

        现在如果我发送一个名为“btcari”的帖子参数,它会正确输出替换的文本。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-11-18
          • 2021-04-04
          • 2017-08-01
          • 2012-07-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-02-07
          相关资源
          最近更新 更多