PHP PageRank checker - Форум успешных вебмастеров - GoFuckBiz.com
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB93.4409
BTC/USD63900.5517
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 30.04.2010, 20:07   #1
digg
$400
 
Аватар для digg
 
Регистрация: 17.05.2009
Сообщений: 13,953
Бабло: $1895870
Отправить сообщение для digg с помощью ICQ
По умолчанию PHP PageRank checker

Помогите пожалуйста, обновился алгоритм подсчета переменной ch в скрипте - результат функции GoogleCH для определения Google PageRank
Выложите кто-нибудь обновленный алгоритм на PHP
Вот старый:
PHP код:
function stringord($string) {
 for(
$i=0;$i<strlen($string);$i++) {
   
$result[$i] = ord($string{$i});
 }
 return 
$result;
}
function 
GoogleCH($url$length=null) {
 
$url=stringord($url);
 if(
is_null($length)) {
    
$length sizeof($url);
 }
 
$a $b 0x9E3779B9;
 
$c 0xE6359A60# GOOGLE MAGIC
 
$k 0;
 
$len $length;
 while(
$len >= 12) {
    
$a += ($url[$k+0] +($url[$k+1]<<8) +($url[$k+2]<<16) +($url[$k+3]<<24));
    
$b += ($url[$k+4] +($url[$k+5]<<8) +($url[$k+6]<<16) +($url[$k+7]<<24));
    
$c += ($url[$k+8] +($url[$k+9]<<8) +($url[$k+10]<<16)+($url[$k+11]<<24));
    
$mix mix($a,$b,$c);
    
$a $mix[0]; $b $mix[1]; $c $mix[2];
    
$k += 12;
    
$len -= 12;
 }

 
$c += $length;

 switch(
$len/* all the case statements fall through */
 
{
    case 
11$c+=($url[$k+10]<<24);
    case 
10$c+=($url[$k+9]<<16);
    case 
$c+=($url[$k+8]<<8);
    
/* the first byte of c is reserved for the length */
    
case $b+=($url[$k+7]<<24);
    case 
$b+=($url[$k+6]<<16);
    case 
$b+=($url[$k+5]<<8);
    case 
$b+=($url[$k+4]);
    case 
$a+=($url[$k+3]<<24);
    case 
$a+=($url[$k+2]<<16);
    case 
$a+=($url[$k+1]<<8);
    case 
$a+=($url[$k+0]);
    
/* case 0: nothing left to add */
 
}
 
$mix mix($a,$b,$c);
 
/*-------------------------------------------- report the result */
 
return $mix[2];
}
function 
zeroFill($a$b) {
 
$z hexdec(80000000);
 if (
$z $a) {
    
$a = ($a>>1);
    
$a &= (~$z);
    
$a |= 0x40000000;
    
$a = ($a>>($b-1));
 } else {
    
$a = ($a>>$b);
 }
 return 
$a;
}

function 
mix($a,$b,$c) {
 
$a -= $b$a -= $c$a ^= (zeroFill($c,13));
 
$b -= $c$b -= $a$b ^= ($a<<8);
 
$c -= $a$c -= $b$c ^= (zeroFill($b,13));
 
$a -= $b$a -= $c$a ^= (zeroFill($c,12));
 
$b -= $c$b -= $a$b ^= ($a<<16);
 
$c -= $a$c -= $b$c ^= (zeroFill($b,5));
 
$a -= $b$a -= $c$a ^= (zeroFill($c,3));
 
$b -= $c$b -= $a$b ^= ($a<<10);
 
$c -= $a$c -= $b$c ^= (zeroFill($b,15));

 return array(
$a,$b,$c);
}
function 
isurl($strng){
 return 
preg_match('/^http:\/\/[A-Za-z0-9]+((\.|-)[A-Za-z0-9\-]+)*\.[A-Za-z0-9]+$/i',$strng);

digg вне форума  
Старый 01.05.2010, 01:23   #2
digg
$400
 
Аватар для digg
 
Регистрация: 17.05.2009
Сообщений: 13,953
Бабло: $1895870
ТС -->
Отправить сообщение для digg с помощью ICQ
автор темы ТС По умолчанию

ну, что ребята? ни кто?
может в ПМ кто скиньте, буду благодарен
digg вне форума  
Старый 01.05.2010, 01:40   #3
imgreen
Senior Member
 
Аватар для imgreen
 
Регистрация: 15.11.2008
Сообщений: 13,230
Бабло: $247845901
По умолчанию

что он делает, я что-то вообще не пойму...
imgreen вне форума  
Старый 01.05.2010, 15:39   #4
digg
$400
 
Аватар для digg
 
Регистрация: 17.05.2009
Сообщений: 13,953
Бабло: $1895870
ТС -->
Отправить сообщение для digg с помощью ICQ
автор темы ТС По умолчанию

спасибо доброму человеку, который подсказал )
digg вне форума  
Старый 01.05.2010, 19:12   #5
medar
кодер-энтузиаст
 
Аватар для medar
 
Регистрация: 04.04.2007
Адрес: Джамайка
Сообщений: 3,381
Бабло: $447150
По умолчанию

digg, выложи плиз рабочий актуальный вариант чекера.
medar вне форума  
Старый 01.05.2010, 19:24   #6
Drg
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 4,096
Бабло: $611825
По умолчанию

Цитата:
Сообщение от medar Посмотреть сообщение
digg, выложи плиз рабочий актуальный вариант чекера.
Выкладывать лучше не стоит) в ПМ пошлет) а то сегодня работает PR, завтра перестанет, опять код ищи(
Drg вне форума  
Старый 02.05.2010, 14:27   #7
krokodile
Senior Member
 
Регистрация: 02.12.2008
Сообщений: 1,031
Бабло: $88718
По умолчанию

Если бы мне тоже кто-нибудь скинул - было бы прекрасно.
krokodile вне форума  
Старый 02.05.2010, 17:28   #8
IFund
Senior Member
 
Регистрация: 24.09.2009
Сообщений: 267
Бабло: $49180
По умолчанию

а мож на питоне есть, чтобы многопоточно проверку делать, а то как то по 1К даже страшновато
IFund вне форума  
Старый 02.05.2010, 17:51   #9
digg
$400
 
Аватар для digg
 
Регистрация: 17.05.2009
Сообщений: 13,953
Бабло: $1895870
ТС -->
Отправить сообщение для digg с помощью ICQ
автор темы ТС По умолчанию

Цитата:
Сообщение от medar Посмотреть сообщение
digg, выложи плиз рабочий актуальный вариант чекера.
Цитата:
Сообщение от krokodile Посмотреть сообщение
Если бы мне тоже кто-нибудь скинул - было бы прекрасно.
в пм скинул
digg вне форума  
Старый 02.05.2010, 19:40   #10
Drg
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 4,096
Бабло: $611825
По умолчанию

Цитата:
Сообщение от IFund Посмотреть сообщение
а мож на питоне есть, чтобы многопоточно проверку делать, а то как то по 1К даже страшновато
Нет..
Я питон не знаю, и мне он кажется каким-то стремным( Какими прогами на питоне не пользовался, они такие глючные... может конечно ошибаюсь.
А если ты php и питон знаешь, то какие проблемы переписать код?
Drg вне форума