![]() |
|
|
|||||||
| Web-программирование HTML, XHTML, PHP, Perl, CSS, JavaScript, MySQL, Java и связанные с этим вопросы |
![]() |
|
|
Опции темы | Опции просмотра |
|
|
#21 |
|
Местный
Регистрация: 26.11.2007
Сообщений: 408
|
|
|
|
|
|
|
#22 |
|
Местный
Регистрация: 26.11.2007
Сообщений: 408
|
На самом деле затычка где-то в математике на уровне ОС, моих скромных мозгов не хватило чтобы пофиксить этот гениальный код, поэтому потратив в 10 раз меньше времени я нашёл вариант кода работающий одинаково правильно у меня на 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 GPR_toHex8($intega){
$Ziffer = "0123456789abcdef";
return $Ziffer[($intega%256)/16].$Ziffer[$intega%16];
}
function GPR_hexEncodeU32($num) {
$result = GPR_toHex8(zeroFill($num,24));
$result .= GPR_toHex8(zeroFill($num,16) & 255);
$result .= GPR_toHex8(zeroFill($num,8) & 255);
return $result . GPR_toHex8($num & 255);
}
function GPR_awesomeHash($value) {
$GPR_HASH_SEED = "Mining PageRank is AGAINST GOOGLE'S TERMS OF SERVICE. Yes, I'm talking to you, scammer.";
$kindOfThingAnIdiotWouldHaveOnHisLuggage = 16909125;
for($i = 0; $i < strlen($value); $i++ ) {
$kindOfThingAnIdiotWouldHaveOnHisLuggage ^= ord(substr($GPR_HASH_SEED, $i % strlen($GPR_HASH_SEED),1)) ^ ord(substr($value, $i,1));
$kindOfThingAnIdiotWouldHaveOnHisLuggage = zeroFill($kindOfThingAnIdiotWouldHaveOnHisLuggage,23) | $kindOfThingAnIdiotWouldHaveOnHisLuggage << 9;
}
return '8'.GPR_hexEncodeU32($kindOfThingAnIdiotWouldHaveOnHisLuggage);
}
function getrank($url) {
$ch = GPR_awesomeHash($url);
$file = "http://toolbarqueries.google.com/search?client=navclient-auto&features=Rank&ch=$ch&q=info:$url";
$data = file($file);
$rankarray = explode (':', $data[2]);
$rank = $rankarray[2];
if (!$rank) $rank=0;
return $rank;
}
function getPRurl($url) {
$ch = GPR_awesomeHash($url);
$prurl = "http://toolbarqueries.google.com/search?client=navclient-auto&features=Rank&ch=$ch&q=info:$url";
return $prurl;
}
//echo getrank("www.domainer.com.ua")."<br>";
echo getPRurl("www.domainer.com.ua");
?>
Тут ещё под руку какой-то код для тиЦ попался, кому надо, вроде работает: Код:
<?
function getTIC($url){ $str=file('http://bar-navig.yandex.ru/u?ver=2&show=32&url='.$url); if ($str==false) { $ans=false; } else { $is_find=preg_match("/value=\"(.\d*)\"/", join("",$str), $tic); if ($is_find<1) { $ans=0; } else { $ans=$tic[1]; } } return $ans;}
echo getTIC("http://www.domainer.com.ua/");?>
|
|
|
|
|
|
#23 | |
|
Pr. Domainer
Регистрация: 28.07.2007
Адрес: Винница
Сообщений: 1,589
|
Цитата:
![]() [Только зарегистрированные пользователи могут видеть ссылки. Регистрация!] [Только зарегистрированные пользователи могут видеть ссылки. Регистрация!]: удобная панель управления доменами и клиентами |
|
|
|
|
|
|
#24 |
|
Местный
Регистрация: 04.08.2007
Сообщений: 188
|
я могу конечно ошибаться
но прошу обратить внимание, что в новом коде нет побитовых сдвигов влево. Так что разрядность тут все таки ой как важна. Даже более важна, чем скорость вращения куллера. |
|
|
|
|
|
#25 |
|
Местный
Регистрация: 26.11.2007
Сообщений: 408
|
Ну не знаю коллега, я всё же думаю что разрядность влияет на скорость сдвига, а не на размер бита, хотя это всё слишком высокие материи и это скорее всего частный специфический случай, иначе бы весь инет пестрел криками о зависимости побитовых сдвигов от разрядности цп, а я такой информации что-то не нарыл... Посмотрим, может со временем что-то прояснится.
Офф: Вы деньги получили? Как там домен поживает? |
|
|
|
|
|
#26 |
|
Местный
Регистрация: 04.08.2007
Сообщений: 188
|
разрядность очень даже влияет на больших числах
напомню, если мы делаем сдвиг влево на 4х разрядном числе 0110 на 2 разряда, то мы получим 1000, но если мы делаем такой же сдвиг на 8ми разрядном числе 00000110 то получим 00011000 то же самое можно сказать и об разнице сдвигов 32 и 64 разрядных чисел. по поводу оффтопа - сообщение в личке. |
|
|
|
|
|
#27 |
|
Местный
Регистрация: 26.11.2007
Сообщений: 408
|
Да, согласен, код рассчитан под 32 разрядные цп, вот и автор скрипта того же мнения
Но саму функцию писал не он, точнее сказать затрудняется. |
|
|
|
|
|
#28 |
|
Местный
|
Тьфу...
вот же я дерево. Честно сохраняю копирайты даже когда копирую код в проекты код которых точно никому не попадет, а додуматься написать автору вопрос не додумался... ![]() хэх... как оказывается я узко мыслю ![]() |
|
|
|
|
|
#29 |
|
Pr. Domainer
Регистрация: 28.07.2007
Адрес: Винница
Сообщений: 1,589
|
В общем после тестов на 32 битной ОС и 64 битной (ну и проце соответственно) последний код пашет на 32х и не пашет на 64х битном.
После танцев с бубном относительно битов удалось всетаки заставить его работать на 64битном. Задача выполненна, топ можно закрывать ![]() Ожидаем новую функцию на стартеде ![]() ![]() [Только зарегистрированные пользователи могут видеть ссылки. Регистрация!] [Только зарегистрированные пользователи могут видеть ссылки. Регистрация!]: удобная панель управления доменами и клиентами |
|
|
|
|
|
#30 |
|
Местный
|
|
|
|
|
![]() |
| Закладки |
| Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
| Опции темы | |
| Опции просмотра | |
|
|
Похожие темы
|
||||
| Тема | Автор | Раздел | Ответов | Последнее сообщение |
| Немного о Google.ua | Lanka | UA | 54 | 18.05.2009 03:53 |
| Google Chrome | medgimet | Разное | 11 | 11.09.2008 07:45 |
| Google: Что случилось с рефералами? | Andriy | 1 | 07.07.2008 22:06 | |
| тайпин google | Palermo | Парковка доменов | 28 | 10.02.2008 21:36 |
| Домены в зоне info можно получить бесплатно | Александр | Новости доменной индустрии | 2 | 14.01.2008 18:44 |
|
|
|