如何在PHP中将字符串与字符串列表进行比较? [英] How do i compare a string to a list of strings in PHP?

查看:106
本文介绍了如何在PHP中将字符串与字符串列表进行比较?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

基本上我有两个文件,它们的字符串之间用换行符隔开。

Basically i have two files with strings in them separated with a new line.

我要做的是从第一个文件中获取第一个字符串并进行比较到第二个文件中的所有字符串。然后从第一个文件中获取第二个字符串,并将其与第二个文件中的所有字符串进行比较,然后获取第三个文件,以此类推。

What i wish to do is get the first string from the first file and compare it to ALL of the strings from the second file. Then get the second string from the first file and compare it to ALL of the strings in the second file then get the third and etc etc.

当前我拥有代码,但我不确定它是否能按我希望的那样工作

Currently i have this piece of code, but i am not sure if it is working as i wish it to be

$file = file_get_contents("file1.txt");
$pieces = explode("\n", trim($file));
foreach($pieces as $piece)
{
    $file2 = file_get_contents("file2.txt");
    $pieces2 = explode("\n", trim($file2));
    foreach($pieces2 as $piece2)
    {
        if($piece == $piece2)
        echo 'yes';
    }
}


推荐答案

有一种更有效的方法可以实现这一目标。使用 array_intersect 您可以找到这两个文件之间的共同点。

Well there is a more efficient way to achieve this. Using array_intersect you can find the common lines between this two files.

$a = file('file1.txt');
$b = file('file2.txt');
$c = array_intersect($a, $b);

$ c中找到两个文件之间的共同之处数组。但是请注意,交叉点区分大小写。

Whatever lines which are common between the two files are found in the $c array. However do note that the intersection is case sensitive.

这篇关于如何在PHP中将字符串与字符串列表进行比较?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆