Офис НП 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 Pisatel Добавлено  27-03-2013 15:17 27 Март 2013 15:17:52 11749  Прочтений 11749 Прочтений
 printer
Итак, начнем с определения ТИЦ (Тематический Индекс Цитирования) от Яндекс.

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



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

Код: PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
//функция получения тиц от Яндекс
 
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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//функция определения 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
1
2
3
4
5
6
7
$domain = "http://".$_SERVER['HTTP_HOST']."/";
//вывод тиц
$tcy = get_yandex($domain);
echo "ТИЦ: ".$tcy."";
//вывод pr
$pr = GetPageRank($domain);
echo "PR: ".$pr."";


Все проверено, на данный момент все работает. Наслаждаемся.
Понравилась статья?
Метки для данной статьи
Похожие статьи
Поделиться:   
Последние активные темы форума
  Темы Просмотров Ответов Последние сообщения