PHP中有比较两个文本文件的函数吗?

4ngedf3f  于 2022-12-25  发布在  PHP
关注(0)|答案(1)|浏览(167)

我需要一个函数来比较两个文本文件,并找到它们之间的相似之处。我已经尝试使用“Strpos”和“similartext”,但似乎都不起作用。我不知道如何比较这两个文件。
这是我的代码,它有两个文件文本一个是跟踪用户的击键,另一个是要与另一个文件比较的单词列表这段代码的目的是跟踪用户的击键,并将它们与一个单词列表进行比较,如果击键与列表中的单词匹配,那么代码将输出回显消息,否则什么也不输出。

echo "<h3> <center>" . '#####Alert#####';
$text = "<br> Unsafe user Found";

$String = 'file.txt';
$list = 'wordlist.txt';



 //compare the difference between the string and the list of word 

    
for ($i = 0; $i <= 0; $i++){
   
    if (strpos(file_get_contents ($String , $list) )!== false) {
            echo  $text;
            //mail($to, $subject, $message);
        }
      return false;

}

例如,如果用户键入account,它应该回显消息,因为account单词在列表中。但是,如果用户键入的单词不在列表中,程序将不能回显消息。
如有任何错误,请接受我的道歉

gmxoilav

gmxoilav1#

要比较两个txt文件的内容并查找它们之间的相似之处,请使用file_get_contents()函数将两个文件的内容读入单独的变量。使用explode()函数将每个文件的内容拆分为单词数组。使用in_array()函数比较单词。如果在一个数组中找到了另一个数组中的单词,您可以输出字符串或采取任何其他所需的动作。

echo "<h3> <center>" . '#####Alert#####';
$text = "<br> Unsafe user Found";

$String = 'file.txt';
$list = 'wordlist.txt';

// Read the contents of both files into separate variables
$stringContents = file_get_contents($String);
$listContents = file_get_contents($list);

// Split the contents of each file into arrays of words
$stringWords = explode(' ', $stringContents);
$listWords = explode(' ', $listContents);

// compare the words using `in_array() function`
foreach ($stringWords as $word) {
    if (in_array($word, $listWords)) {
        echo $text;
    }
}

相关问题