FC2のブックマークサービスは、見る限り画像でしかブックマークの登録件数を取得できないみたいなので
数字で扱いたい人のためにプログラムを書いてみた。
使ったのは『PEAR::HTTP_Request』です。
意外と簡単にできた。
順序は
①FC2のブックマーク登録人数を画像で表示。
②FC2ブックマークの画像のURLを取得。
③それを数字だけの形にし終了。
<?php
require_once “HTTP/Request.php“;
$req =& new HTTP_Request(”http://bookmark.fc2.com/image/users/任意のURL“);
$req->sendRequest();
$location = $req->getResponseHeader(location);
$fc2 = str_replace(”http://bookmark.fc2.com/icons/”,””,”$location”);
$fc2 = str_replace(”.png”,””,”$fc2″);
$pattern = “^0+”;
$fc2 = mb_ereg_replace(”$pattern”,””,”$fc2″);
echo $fc2;
?>
順序としては、画像にPEAR::HTTP_Requestでアクセスして『レスポンスヘッダ』を取得。
ためしにブラウザで
http://bookmark.fc2.com/image/users/任意のURL
にアクセスしたときに
HTTP/1.x 302 Found
Date: Fri, 20 Mar 2009 13:46:17 GMT
Server: Apache/2.0.59 (Unix) PHP/5.1.6 mod_perl/2.0.2 Perl/v5.8.3
X-Powered-By: PHP/5.1.6
P3P: CP=”NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM”
Location: http://bookmark.fc2.com/icons/00014.png
Content-Length: 0
Connection: close
Content-Type: text/html
Content-Language: en
となっていて『Location』に画像のURLを発見!
ということで$req->getResponseHeader(location);
で画像のURLを取得して後はURLを『~~~~.png』みたいな形に削って
~~~~~の部分を取得して終わり。
動かない場合は『PEAR::HTTP_Request』がインストールされているか確認してみてください。