0

これが私がやりたいことです..

http://example.com/test.htmlにあるファイルで「example.com」というリンクを探しているとします。

上記の Web サイトで を検索する PHP スクリプトを使用したいと考えています。ただし、にクラスまたは ID タグがある場合は、それが機能する必要もあります<A>

4

2 に答える 2

2

下記URL参照

PHP経由でURLが存在するかどうかを確認するにはどうすればよいですか?

または試してみてください

$file = 'http://www.domain.com/somefile.jpg';
$file_headers = @get_headers($file);
if($file_headers[0] == 'HTTP/1.1 404 Not Found') {
    $exists = false;
}
else {
    $exists = true;
}

ここから: http://www.php.net/manual/en/function.file-exists.php#75064

...そして、上記の投稿のすぐ下に、curl ソリューションがあります。

function url_exists($url) {
    if (!$fp = curl_init($url)) return false;
    return true;
}

更新コード:-

タグ内の検索IDまたはクラスにSimpleHtmlDomクラスを使用できます

下記URLをご覧ください

http://simplehtmldom.sourceforge.net/

http://simplehtmldom.sourceforge.net/manual_api.htm

http://sourceforge.net/projects/simplehtmldom/files/

http://davidwalsh.name/php-notifications

于 2012-09-06T19:26:28.967 に答える
0

他の誰かがそれを必要とする場合に備えて、これが私が見つけたものです!

  $url = "http://example.com/test.html";
  $searchFor = "example.com"
  $input = @file_get_contents($url) or die("Could not access file: $url");
  $regexp = "<a\s[^>]*href=(\"??)([^\" >]*?)\\1[^>]*>(.*)<\/a>";
  if(preg_match_all("/$regexp/siU", $input, $matches, PREG_SET_ORDER)) {
    foreach($matches as $match) {
      echo $match[2];
      if ($match[2] == $searchFor)
      {
          $isMatch = 1;
      } else {
          $isMatch= 0;
      }
      // $match[0] = A tag
      // $match[2] = link address
      // $match[3] = link text
    }
  }

      if ($isMatch)
      {
          echo "<p><font color=red size=5 align=center>The page specified does contain your link. You have been credited the award amount!</font></p>";
      } else {
          echo "<p><font color=red size=5 align=center>The specified page does not have your referral link.</font></p>";
      }
于 2012-09-06T19:23:17.997 に答える