Удаление нечетких дублей

Mongolor

Новичок
Удаление нечетких дублей

Подскажите пожалуйста как мне удалить нечеткие дубли из массива?
т.е. есть список урлов и дубли надо искать не среди всей строчки, а только в домене, и записывать в итог полный урл.
Код:
_ttp://eatingthesun.blogspot.com/2010_01_01_archive.html
_ttp://olgacatasus.blogspot.com/2009_09_01_archive.html
_ttp://olgacatasus.blogspot.com/2008_11_01_archive.html
_ttp://magusvilag.lapunk.hu/?modul=oldal&tartalom=129720
_ttp://magusvilag.lapunk.hu/?modul=oldal&tartalom=133549
_ttp://magusvilag.lapunk.hu/?modul=oldal&tartalom=133007
_ttp://georden.blogspot.com/2008_06_01_archive.html
_ttp://georden.blogspot.com/2009/12/nao-me-consumas-com-perguntas.html
_ttp://georden.blogspot.com/2009/11/do-melhor-de-nos-la-para-fora-que-por.html
т.о. на выходе должно получиться
Код:
_ttp://eatingthesun.blogspot.com/2010_01_01_archive.html
_ttp://olgacatasus.blogspot.com/2009_09_01_archive.html
_ttp://magusvilag.lapunk.hu/?modul=oldal&tartalom=129720
_ttp://georden.blogspot.com/2008_06_01_archive.html
 

Splurov

Новичок
Как минимум, пройтись по массиву, применить функцию parse_url и т.д.
 

Gas

может по одной?
Код:
ALTER TABLE `tbl` ADD `domain` varchar(255);
UPDATE `tbl` SET `domain` = _пляски_c_strpos_и_substr_;
ALTER IGNORE TABLE `tbl` ADD UNIQUE INDEX `domain`(`domain`);
ALTER TABLE `tbl` DROP `domain`;
-~{}~ 30.03.10 12:00:

О чёрт, подумал что данные в базе лежат. Ладно, пусть висит меседж.

-~{}~ 30.03.10 12:02:

Подскажите пожалуйста как мне удалить нечеткие дубли из массива?
создать другой массив, ключами которого будут домены. А как ты пытался вообще сделать?
 

Mongolor

Новичок
Получилось так
PHP:
<?php
$base_arr = explode(PHP_EOL, file_get_contents("base.txt"));
$url_arr = array();
foreach($base_arr as $url) {
$url_arr[] = parse_url($url, PHP_URL_HOST);
}
$uniq_url_arr = array_unique($url_arr);
$end_arr = array();
foreach($uniq_url_arr as $k=>$u) {
	$end_arr[] = $base_arr[$k];
}
file_put_contents("uniq.txt",implode(PHP_EOL ,$end_arr));
?>
 

Gas

может по одной?
я бы тогда так написал
PHP:
$base_arr = explode(PHP_EOL, file_get_contents("base.txt"));
$url_arr = array(); 
foreach($base_arr as $url) { 
  $host = parse_url($url, PHP_URL_HOST); 
  if (!isset($url_arr[$host])) $url_arr[$host] = $url;
}
file_put_contents("uniq.txt",implode(PHP_EOL , $url_arr));
 
Сверху