首页 > 解决方案 > Elimante 如何在多个数组中复制数据

问题描述

休斯顿我有一个问题。我有这个preg_match_all响应是许多带有重复数字的数组(原始数据有这些重复)。我需要消除重复的数字并转移到一个变量。我尝试使用array_unique()and array_merge()。谢谢你的帮助。

preg_match_all('~x">([^"]*)<\/h4>|[0-9]{5}~',$preg_data,$item, PREG_SET_ORDER);

输出:

Array ( )
Array ([0] => x"> 13:30 - Denver</h4>   [1] =>  13:30 - Denver)
Array ( )
Array ([0] => 69275)Array([0] => Array([0] => 69275[1] => 69275))
Array ([0] => 69275)Array([0] => Array([0] => 69275[1] => 69275))
Array ([0] => 69275)Array([0] => Array([0] => 69275[1] => 69275))
Array ()
Array ([0] => x"> 16:00 - Miami</h4>[1] =>  16:00 - Miami)
Array ()
Array ([0] => 69275)Array([0] => Array([0] => 69275[1] => 69280))
Array ([0] => 69275)Array([0] => Array([0] => 69275[1] => 69280))
Array ([0] => 69275)Array([0] => Array([0] => 69275[1] => 69280))

if (@preg_match_all('/([0-9]{5})/',$item[0],$match, PREG_SET_ORDER)); { print_r($match);}

Array ( )
Array ( [0] => Array ( [0] => 69268 [1] => 69268 )) 
Array ( [0] => Array ( [0] => 69268 [1] => 69268 ))
Array ( )
Array ( [0] => Array ( [0] => 69270 [1] => 69270 )) 
Array ( [0] => Array ( [0] => 69270 [1] => 69270 ))
Array ( )
Array ( )
Array ( [0] => Array ( [0] => 69270 [1] => 69270 )) 
Array ( [0] => Array ( [0] => 69270 [1] => 69270 ))
Array ( )
Array ( )
Array ( [0] => Array ( [0] => 69270 [1] => 69270 )) 
Array ( [0] => Array ( [0] => 69270 [1] => 69270 ))
Array ( )

标签: arraysduplicatespreg-match-all

解决方案


我用这个组合

    preg_match_all('~x">([^"]*)<\/h4>|[0-9]{5}~',$preg_data,$data_mach);    
    $data_clean= array_values(array_filter(array_unique($data_mach[0])));

preg_mach 提取数据 array_unique 以消除重复 array_filter 以消除空白 array_values 以仅工作数字。完毕。


推荐阅读