PHP Functions untuk Query Google PageRank
Posted on April 5, 2008
Filed Under PHP
Sumber: PHP PageRank query script
Berikut functions-nya, sudah saya coba dan bekerja dengan sempurna.
Cara pakai:
$pr = getpr(”http://example.com/dir/anu/ini.html”);
echo $pr;
- <?php
- // 3/20/2008 - Updated by Roger Collins (http://www.rogercollins.com/)
- // to remove graphing step
- //PageRank Lookup v1.1 by HM2K (update: 31/01/07)
- //based on an alogoritham found here: http://pagerank.gamesaga.net/
- //settings - host and user agent
- $googlehost='toolbarqueries.google.com';
- $googleua='Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.6) Gecko/20060728 Firefox/1.5';
- //convert a string to a 32-bit integer
- function StrToNum($Str, $Check, $Magic) {
- $Int32Unit = 4294967296; // 2^32
- for ($i = 0; $i < $length; $i++) {
- $Check *= $Magic;
- //If the float is beyond the boundaries of integer (usually +/- 2.15e+9 = 2^31),
- // the result of converting to integer is undefined
- // refer to http://www.php.net/manual/en/language.types.integer.php
- if ($Check >= $Int32Unit) {
- $Check = ($Check - $Int32Unit * (int) ($Check / $Int32Unit));
- //if the check less than -2^31
- $Check = ($Check < -2147483648) ? ($Check + $Int32Unit) : $Check;
- }
- }
- return $Check;
- }
- //genearate a hash for a url
- function HashURL($String) {
- $Check1 = StrToNum($String, 0x1505, 0x21);
- $Check2 = StrToNum($String, 0, 0x1003F);
- $Check1 >>= 2;
- $Check1 = (($Check1 >> 4) & 0x3FFFFC0 ) | ($Check1 & 0x3F);
- $Check1 = (($Check1 >> 4) & 0x3FFC00 ) | ($Check1 & 0x3FF);
- $Check1 = (($Check1 >> 4) & 0x3C000 ) | ($Check1 & 0x3FFF);
- $T1 = (((($Check1 & 0x3C0) << 4) | ($Check1 & 0x3C)) <<2 ) | ($Check2 & 0xF0F );
- $T2 = (((($Check1 & 0xFFFFC000) << 4) | ($Check1 & 0x3C00)) << 0xA) | ($Check2 & 0xF0F0000 );
- return ($T1 | $T2);
- }
- //genearate a checksum for the hash string
- function CheckHash($Hashnum) {
- $CheckByte = 0;
- $Flag = 0;
- for ($i = $length - 1; $i >= 0; $i --) {
- $Re = $HashStr{$i};
- if (1 === ($Flag % 2)) {
- $Re += $Re;
- $Re = (int)($Re / 10) + ($Re % 10);
- }
- $CheckByte += $Re;
- $Flag ++;
- }
- $CheckByte %= 10;
- if (0 !== $CheckByte) {
- $CheckByte = 10 - $CheckByte;
- if (1 === ($Flag % 2) ) {
- if (1 === ($CheckByte % 2)) {
- $CheckByte += 9;
- }
- $CheckByte >>= 1;
- }
- }
- return '7'.$CheckByte.$HashStr;
- }
- //return the pagerank checksum hash
- function getch($url) { return CheckHash(HashURL($url)); }
- //return the pagerank figure
- function getpr($url) {
- $pr = 0; // default return
- $ch = getch($url);
- if ($fp) {
- $out = "GET /search?client=navclient-auto&ch=$ch&features=Rank&q=info:$url HTTP/1.1\r\n";
- //echo "<pre>$out</pre>\n"; //debug only
- $out .= "User-Agent: $googleua\r\n";
- $out .= "Host: $googlehost\r\n";
- $out .= "Connection: Close\r\n\r\n";
- //$pagerank = substr(fgets($fp, 128), 4); //debug only
- //echo $pagerank; //debug only
- //echo $data;
- if($pos === false){} else{
- return $pr;
- }
- }
- //else { echo "$errstr ($errno)<br />\n"; } //debug only
- }
- return $pr;
- }
- ?>
Comments
4 Responses to “PHP Functions untuk Query Google PageRank”
Leave a Reply
Pertanyaan kemaren kena akismet kayaknya, nanya lagi ah.
cara pakenya masih kurang jelas om, bisa lebih rinci lagi? Thank you.
@atas
tokocomputer.info tapi kok jualannya jeans?
caranya, code di dalam kotak tinggal di copas ke notepad trus di save misalnya dg nama pagerank.php. lalu dari file lain tinggal include file tersebut misal include(”pagerank.php”); kemudian pakai getpr($url); yang akan return PR url tsb.
mas fujitsu klo paling ngga ngerti dikit2 php pasti paham maksudnya…
He he he he he, maklum om nama juga newbi
habis copas dari toko satunya lom di edit he he he.
tetap lom jelas om, buta PHP solae hiks hiks.
Thank you ya.
Thanks, lumayan nih, lumayan bikin pusing he he he