Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何从文本文件中删除重复值?_Php - Fatal编程技术网

Php 如何从文本文件中删除重复值?

Php 如何从文本文件中删除重复值?,php,Php,我是PHP新手,我知道与此相关的问题很多,但我找不到任何有用的信息。我需要从文本文件中删除重复的值 以下是我的文本文件的文本: \ewf54fwe*51-651few15wfe42' 以下是我的PHP代码: $names = file('1uzduotistxt.txt'); foreach($names as $name) { for($i=0; $i<strlen($name);$i++) { if (is_numeric($name[$i]) &&

我是PHP新手,我知道与此相关的问题很多,但我找不到任何有用的信息。我需要从文本文件中删除重复的值

以下是我的文本文件的文本:

\ewf54fwe*51-651few15wfe42'
以下是我的PHP代码:

$names = file('1uzduotistxt.txt');

foreach($names as $name)
{
    for($i=0; $i<strlen($name);$i++) {
        if (is_numeric($name[$i]) && $name[$i]%2==0)
        { 
            echo "$name[$i]";
        }
    }
}
$names=file('1uzduotistxt.txt');
foreach($name作为$name)
{

对于($i=0;$i您只需要[count_chars():][1]

第二个参数$mode设置为3时,
count\u chars()
将输出:

 <?php

$names = file('1uzduotistxt.txt');

foreach($names as $name)
{
    $name = count_chars( $name, 3);

    for($i=0; $i<strlen($name);$i++) {
        if (is_numeric($name[$i]) && $name[$i]%2==0)
        { 

            echo "$name[$i]";
        }

    }

}

?>


输出
246

您可以获取该文件的字符串内容,然后从该字符串中提取整数,然后将其过滤为唯一的

$str = "\ewf54fwe*51-651few15wfe42";

$arr = array_values(array_unique(str_split(intval(preg_replace('/[^0-9]+/', '', $str), 10))));
      print_r($arr);

我已经试过了,但它仍然不能删除重复的值…它仍然打印“4642”。:/伙计,请插入count_chars()好吗在我的代码中?因为我不知道我必须在哪里插入它,这就是为什么我的代码不起作用或者它显示了很多错误…代码再次更新…只需复制并粘贴它…如果答案对你有帮助,不要忘了接受答案…(你可以通过点击答案附近的“勾号”接受答案,然后它将变为绿色)
$str = "\ewf54fwe*51-651few15wfe42";

$arr = array_values(array_unique(str_split(intval(preg_replace('/[^0-9]+/', '', $str), 10))));
      print_r($arr);