Loading:

Promocja Helion.pl

Pobranie informacji o łączach (linkach) danej witryny

Funkcja pobiera adres url jako parametr i zwraca informacje o łączach (linkach) na tej stronie.

Przykład użycia:

$page = "http://wp.pl";
informacja($page);




Napisz Artykuł

Listing


<?php

function informacja($page){
        if (!preg_match('|^https{0,1}://|', $page)) {
                print "Adres URL '$page' jest nieprawidłowy lub nieobsługiwany.";
                exit;
        }
       
        $data = file_get_contents($page);
       
        $length = strlen($data);
       
        preg_match_all('|<a\s[^>]*href="([^"]+)"|i', $data, $matches);
       
        $all_links = array();
        $js_links = array();
        $full_links = array();
        $local_links = array();
        foreach ($matches[1] as $link) {
                if (@$all_links[$link]) {
                continue;
                }
                $all_links[$link] = true;
       
                if (preg_match('/^javascript:/', $link)) {
                $js_links[] = $link;
                } elseif (preg_match('/^https{0,1}:/i', $link)) {
                $full_links[] = $link;
                } else {
                $local_links[] = $link;
                }
        }
       
        ?>
        <table border="0">
        <?php
        print '<table border="0">';
        print "<tr><td>Liczba łączy:</td><td>";
        print strval(count($matches[1])) . "</td></tr>";
        print "<tr><td>Łącza unikatowe:</td><td>";
        print strval(count($all_links)) . "</td></tr>";
        print "<tr><td>Łącza lokalne:</td><td>";
        print strval(count($local_links)) . "</td></tr>";
        print "<tr><td>Łącza kompletne:</td><td>";
        print strval(count($full_links)) . "</td></tr>";
        print "<tr><td>Łącza z wywołaniami języka JavaScript:</td><td>";
        print strval(count($js_links)) . "</td></tr>";
        ?>
        </table>
}
?>
$page = "http://wp.pl";
informacja($page);


Ten wpis posiada swój wątek na forum

Wszystkie pytania prosimy kierować właśnie tam ponieważ komentarze to miejsce na poprawki do kodu lub alternatywne rozwiązania i pytania nie będą publikowane

http://forum.funkcje.net/forum/viewtopic.php?f=2&t=3285

Dane do logowania na forum są takie same jak na funkcje.net



Dodano przez: igor
Ranga: Administrator serwisu Punktów: 28716
Komentarze użytkowników
    • Treść komentarza
      Kod do komentarza (opcjonalnie)
      PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
      Autor
      Token
      token

       

       








funkcje.net
Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-17 v.1.5 | design: diviXdesign & rainbowcolors