Отсортировать домены 4 уровня

barbakan

Мой дом здесь!
Регистрация
18 Авг 2007
Сообщения
347
Реакции
399
Есть скрипт , писал не я , я в этом нечего не понимаю, он из txt файла сортирует домены 2 и 3 уровня и раскидует по соответствующим файлам, нужно добавить что бы он еще домены 4 и 5 уровня кидал в соответствующие файлы. Помогите пжл кто сображает.

Код:
<?php
$start=file('in.txt');
$mas2=array();
$mas3=array();
 
foreach($start as $nehui)
    {
    $zamen1=str_replace("\r\n","", $nehui);
    $zamen1=str_replace("www.","", $zamen1);
    $zamen1=str_replace("http://","", $zamen1);
    $mascont=explode("/",$zamen1);
    $hz=explode(".",$mascont[0]);
 
        if(count($hz)==2)
            {
            $mas2[]=$hz[0].".".$hz[1];
           
            }
        if(count($hz)==3)
            {
            $mas3[]=$hz[0].".".$hz[1].".".$hz[2];
           
            }
    }
 
 
$file=fopen("2domain.txt", "w");
foreach($mas2 as $pohui)
    {
    fwrite($file,$pohui."\r\n");
    }
fclose($file);
 
 
$file=fopen("3domain.txt", "w");
foreach($mas3 as $nahui)
    {
    fwrite($file,$nahui."\r\n");
    }
fclose($file);
 
?>
 
  • Заблокирован
  • #2
PHP:
<?php
$start=file('in.txt');
$mas2=array();
$mas3=array();
$mas4=array();
$mas5=array();
 
foreach($start as $nehui)
    {
    $zamen1=str_replace("\r\n","", $nehui);
    $zamen1=str_replace("www.","", $zamen1);
    $zamen1=str_replace("http://","", $zamen1);
    $mascont=explode("/",$zamen1);
    $hz=explode(".",$mascont[0]);
 
        if(count($hz)==2)
            {
            $mas2[]=$hz[0].".".$hz[1];
 
            }
        if(count($hz)==3)
            {
            $mas3[]=$hz[0].".".$hz[1].".".$hz[2];
 
            }
        if(count($hz)==4)
            {
            $mas4[]=$hz[0].".".$hz[1].".".$hz[2].".".$hz[3];
 
            }
        if(count($hz)==5)
            {
            $mas5[]=$hz[0].".".$hz[1].".".$hz[2].".".$hz[3].".".$hz[4];
 
            }
    }
 
 
$file=fopen("2domain.txt", "w");
foreach($mas2 as $pohui)
    {
    fwrite($file,$pohui."\r\n");
    }
fclose($file);
 
 
$file=fopen("3domain.txt", "w");
foreach($mas3 as $nahui)
    {
    fwrite($file,$nahui."\r\n");
    }
fclose($file);
 
 
$file=fopen("4domain.txt", "w");
foreach($mas4 as $nahui)
    {
    fwrite($file,$nahui."\r\n");
    }
fclose($file);
 
 
$file=fopen("5domain.txt", "w");
foreach($mas5 as $nahui)
    {
    fwrite($file,$nahui."\r\n");
    }
fclose($file);
 
?>
 
Вы извращенцы...... :eek:
Можно вообще не привязываться к количеству... :-]

PHP:
<?php
$start=file('in.txt');
$file=array();
 
for ($i=0, $n=count($start); $i<$n; ++$i)
{
preg_match('#(https?://)?(www\.)?(.+)$#', trim($start[$i]), $str);
$count=substr_count($str[3], '.');
 
if (!isset($file[$count]))
$file[$count]=fopen($count.'domain.txt', "w");
fwrite($file[$count], $str[3]."\r\n");
}
 
?>

PS. :rolleyes: Да я не закрываю файлы ибо **х !? Все равно скрипт не инклудный и просто выполняет мелкую задачу, а по завершению сам все закроет.
Если есть желание пускайте ещё 1 цыкл на закрытие....
 
Спасибо , то что надо, выручили )
 
Назад
Сверху