Офис НП AMWAY в Ярославле
Купить продукцию Амвей в Ярославле
На карте Купить AMWAY в ЯрославлеПриобрести высококачественную продукцию Амвей в Ярославле, получить консультации по бизнесу, заказать продукцию или получить заказ:
Адрес: улица Валентины Терешковой, дом 1 (Вход со двора)
Телефон: +7 (920) 112-00-91
Email: matyxho@mail.ru
Сайт: https://www.amway.ru/user/lebedem
Визитка: http://yar.meweb.ru
Иерархия статей
Статьи » Программирование » Полезные PHP- функции: определение ТИЦ и PR
Сниппет
Нашел пару функций, которые реально рабочие: определение ТИЦ и Page Rank сайта.
Полезные PHP- функции: определение ТИЦ и PR
Опубликовал  Pisatel Добавлено  27-03-2013 15:17 27 Март 2013 15:17:52 3847  Прочтений 3847 Прочтений  0 Комментариев 0 Комментариев
 printer
Итак, начнем с определения ТИЦ (Тематический Индекс Цитирования) от Яндекс.

Функция определения ТИЦ сайта от Яндекс



Собственно, сначала- сама функция, а в самом низу будет пример использования. Поехали.

Код: PHP
//функция получения тиц от Яндекс



function get_download($url){

$ret = false;

if (function_exists('curl_init')){

if ($curl = curl_init()){

if (!curl_setopt($curl, CURLOPT_URL, $url))return $ret;

if (!curl_setopt($curl, CURLOPT_RETURNTRANSFER, true))

return $ret;

if (!curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 30))

return $ret;

if (!curl_setopt($curl, CURLOPT_HEADER, false))return $ret;

if (!curl_setopt($curl, CURLOPT_ENCODING,"gzip, deflate"))

return $ret;

$ret = curl_exec($curl);

curl_close($curl);

}

}

else {

$u = parse_url($url);

if ($fp = @fsockopen($u['host'], !empty($u['port'])?$u['port']:80)){

$headers = 'GET '. $u['path']. '?'. $u['query'].'HTTP/1.0'. "\r\n";

$headers.='Host: '. $u['host']."\r\n";

$headers.='Connection: Close'. "\r\n\r\n";

fwrite($fp, $headers);

$ret = '';

while(!feof($fp)){

$ret.=fgets($fp,1024);

}

$ret = substr($ret,strpos($ret,"\r\n\r\n")+4);

fclose($fp);

}

}

return $ret;

}

function get_yandex($url){

$ret = 'N/A';

if (substr($url,0,7) != 'http://')

$url = 'http://'. $url;

if ($content = get_download('http://bar-navig.yandex.ru/u?ver=2&url='. urlencode($url).'&show=1&post=0')){

if (class_exists('SimpleXMLElement')){

if ($xmldoc = new SimpleXMLElement($content)){

$tcy = $xmldoc -> tcy;

if (!empty($tcy)){

$ret = $tcy['value'];

}

}

}

else {

preg_match("/value=\"(.\d*)\"/", $content, $tic);

if (!empty($tic[1]))$ret = $tic[1];

}

}

return $ret;

}




Далее сразу будет функция определения PR сайта.

Функция определения Page Rank сайта от Google



Так же: сначала- сама функция, в самом низу- пример использования.

Код: PHP
//функция определения pr



function GetPageRank($q, $host = 'toolbarqueries.google.com', $context = NULL){

$seed = "Mining PageRank is AGAINST GOOGLE'S TERMS OF SERVICE. Yes, I'm talking to you, scammer.";

$result = 0x01020345;

$len = strlen($q);

for($i = 0;$i < $len;$i++)

{

$result^=ord($seed{$i % strlen($seed)})^ord($q{$i});

$result = (($result >> 23) & 0x1ff)|$result << 9;

}

if (PHP_INT_MAX != 2147483647){

$result = -(~($result&0xFFFFFFFF)+1);

}

$ch = sprintf('8%x', $result);

$url = 'http://%s/tbr?client=navclient-auto&ch=%s&features=Rank&q=info:%s';

$url = sprintf($url, $host, $ch, $q);

@$pr = file_get_contents($url, false, $context);

return $pr?substr(strrchr($pr, ':'),1):false;

}




Ну и теперь- пример использования. Не забываем, что это- функции, которыми мы можем обработать любую переменную с URL сайта. Для примера я беру адрес текущего сайта, на котором будет установлен скрипт, ты же в переменной $domain можешь указать адрес любого сайта:

Код: PHP
$domain = "http://".$_SERVER['HTTP_HOST']."/";

//вывод тиц

$tcy = get_yandex($domain);

echo "ТИЦ: ".$tcy."";

//вывод pr

$pr = GetPageRank($domain);

echo "PR: ".$pr."";




Все проверено, на данный момент все работает. Наслаждаемся.
Понравилась статья?
Метки для данной статьи
Похожие статьи
Поделиться:   
Комментарии
Нет комментариев.
Добавить комментарий
Имя:

Проверочный код:
Последние активные темы форума
  Темы Просмотров Ответов Последние сообщения
folder Вопрос по переделке bb-кода
PHP, MySQL
2145 5 Pisatel
26. мая 2017
folder Вопросы по Ajax форме обратной связи
CMS PHP Fusion
9528 48 Ditrin
19. февраля 2017
folder BBCode YouTube Video Colorbox mod
CMS PHP Fusion
6826 2 Pisatel
10. декабря 2016
folder Как лучше создать собственную страницу?
CMS PHP Fusion
5455 17 Pisatel
11. мая 2016
folder Небольшие вопросы по скриптам магазина и катало...
PHP, MySQL
45456 80 Pisatel
11. января 2016
folder BBCode Code mod
CMS PHP Fusion
3323 0 Pisatel
31. августа 2015
folder Ajax Like Dislike Article Panel
CMS PHP Fusion
6678 16 Pisatel
07. июля 2015
folder Хлебные крошки / BreadCrumbs SEO Panel
CMS PHP Fusion
7328 17 Pisatel
04. июля 2015
folder Abbr Description BBCode
CMS PHP Fusion
2471 0 Pisatel
15. июня 2015
folder Плагин Email рассылки Mail To All by Pisatel
CMS PHP Fusion
10332 32 Pisatel
26. апреля 2015
folder Подозрительный трафик и прочие страшилки
Всякая хрень
4524 2 Ditrin
23. апреля 2015
folder Мод Newsletter - рассылка писем пользователям с...
CMS PHP Fusion
6280 13 Pisatel
10. апреля 2015
folder Мод отправки писем PHPMailer для PHP-Fusion
CMS PHP Fusion
33004 113 Ditrin
06. апреля 2015
folder Появление неизвестного файла subscriptions.php
CMS PHP Fusion
3147 2 Pisatel
06. апреля 2015
folder Autoban on IP
CMS PHP Fusion
12178 13 Pisatel
03. апреля 2015