Bu yazımızda Google a nasıl ping atacağımızı öğreneceğiz, bu fonksiyonu ben de sitemapı oluşturduktan sonra Google a ping atmak için kullanıyorum, bir yazı ekleyince otomatik olarak sitemap oluşturuluyor ve Google a ping atılıyor, böylelikle Google sitemapımın güncellendiğini öğreniyor ve tekrar sitemapı indirip içeriğini indexliyor, aslında bu kod php de socket kullanımına da güzel bir örnek. Fonksiyonun yazarı; J de Silva, kendisine bu kullanışlı fonksiyon için teşekkür ediyoruz.

function pingGoogleSitemaps( $url_xml )
{
   $status = 0;
   $google = 'www.google.com';
   if( $fp=@fsockopen($google, 80) )
   {
      $req =  'GET /webmasters/sitemaps/ping?sitemap=' .
              urlencode( $url_xml ) . " HTTP/1.1\r\n" .
              "Host: $google\r\n" .
              "User-Agent: Mozilla/5.0 (compatible; " .
              PHP_OS . ") PHP/" . PHP_VERSION . "\r\n" .
              "Connection: Close\r\n\r\n";
      fwrite( $fp, $req );
      while( !feof($fp) )
      {
         if( @preg_match('~^HTTP/\d\.\d (\d+)~i', fgets($fp, 128), $m) )
         {
            $status = intval( $m[1] );
            break;
         }
      }
      fclose( $fp );
   }
   return( $status );
}
Fonksiyonun çıktı olarak 200, 404 gibi HTTP Status kodları veriyor, eğer sonuç 200 ise ping atma işlemimiz başarılı olmuş demektir, kullanımına bir örnek;

if (200 === ($durum=pingGoogleSitemaps('http://whosayin.com/sitemap.xml')))
    echo "Ping Başarılı.<br />Durum Kodu: $durum.";
else
    echo "Ping Başarısız.<br />Durum Kodu: $durum.";
Bloguma yazdığım yazı, sizinde kendi scriptlerinizde işe yarayabilir diye düşündüm,..
(http://www.whosayin.com/php-ile-goog...lemi-i-25.html)