PHP はブラウザの IP アドレス、ブラウザの IP が存在するオペレーティング システム、および画像出力を取得します。 http://www.pc811.com/ip/i.php にアクセスしてデモンストレーションの効果を確認できます。 Windows フォント パッケージが必要です。フォント パッケージはディレクトリに配置されます。
- header("Content-type: image/png");/*これが画像であることを示す*/
- $width=350;/*画像の長さ*/
- $height=120; /*画像の高さ*/
- //$_GET["editname"]
- $size=11;/*フォントサイズ*/
- $angle=0;/*回転度*/
- $font = "simhei.ttf"; /*フォントを設定*/
- $useragent=$useragent=$_SERVER['HTTP_USER_AGENT'];
- $signature=$_GET["signature"];//URL から渡されるパラメータ
- /*画像属性を設定*/
- $ im = imagecreatetruecolor($width, $height);
- /*$im = imagecreatefromjpeg("logo.png");*/
- $white = imagecolorallocate($im, 255, 255, 255);/*背景色* /
- $grey = imagecolorallocate($im, 255, 0, 0);/*フォントの色*/
- $black = imagecolorallocate($im, 0, 0, 0);
- /*クライアントのIPアドレスと場所の取得*/
- 関数アドレス($ip) {
- $info = json_decode(file_get_contents('http://int.dpool.sina.com.cn/iplookup/iplookup.php?ip='.$ip.'&format= json '), false);
- if ($info ->ret == 1) {
- if ($info ->province != $info ->city) {
- return $info ->country." , ".$info ->province."(".$info ->city.") ".$info ->district." ".$info ->desc;
- } else {
- return $info - >country.",".$info ->province." ".$info ->district." ".$info ->desc;
- }
- } else {
- return 'Earth';
- }
- }
- /*クライアントブラウザのバージョンを取得*/
- function browser($ua) {
- if (stripos($ua, "Googlebot")) {
- $browser = "Google Spider";
- }
- elseif(stripos ($ ua, "Baiduspider") !== false) {
- $browser = "Baidusspider";
- }
- elseif(stripos($ua, "Yahoo!") !== false) {
- $browser = "Yahoo Spider";
- }
- elseif(stripos($ua, "bingbot")) {
- $browser = "Bing Spider";
- }
- elseif(stripos($ua, "YRSpider")) {
- $browser = "雲南スパイダー";
- }
- elseif(stripos($ua, "Yeti") !== false) {
- $browser = "ネイバー スパイダー";
- }
- elseif(stripos($ua, "Maxthon")) {
- if (stripos( $ua, "AppleWebKit")) {
- $browser = "訨游ブラウザ (スピードモード)";
- }
- elseif(stripos($ua, "Trident")) {
- $browser = "訨游ブラウザ ブラウザ (互換性)モード)";
- }
- elseif(stripos($ua, "MAXTHON 2.0")) {
- $browser = "MAXTHON 2.0";
- }
- }
- elseif(stripos($ua, "Firefox ")) {
- $ブラウザ = "Firefox" ;
- }
- elseif(stripos($ua, "Opera") == 0 &&tripos($ua, "Presto")) {
- $browser = "Opera" ;
- }
- elseif(stripos( $ua, "BIDUBrowser")) {
- if (stripos($ua, "Trident")) {
- $browser = "Baidu ブラウザ (互換モード)";
- }
- elseif( Stripeos($ua, "AppleWebKit") ) {
- $browser = "Baidu ブラウザ (エクストリーム スピード モード)";
- }
- }
- elseif(stripos($ua, "Ruibin")) {
- $browser = "Ruiying ブラウザ";
- }
- elseif( tripos($ua, "qihu theworld")) {
- if (stripos($ua, "Trident")) {
- $browser = "ワールド ウィンドウ ブラウザ";
- }
- elseif(stripos($ua, "AppleWebKit") ) {
- $browser = "ワールド ウィンドウ ブラウザ (エクストリーム スピード モード)";
- }
- }
- elseif(stripos($ua, "MetaSr")) {
- if (stripos($ua, "Trident")) {
- $browser = "Sogou 高速ブラウザ (互換モード)";
- }
- elseif(stripos($ua, "AppleWebKit")) {
- $browser = "Sogou 高速ブラウザ (超高速モード)";
- }
- }
- elseif(stripos($ua, "LBBROWSER")) {
- if (stripos($ua, "Trident")) {
- $browser = "チーターブラウザ (互換モード) )";
- }
- elseif (stripos($ua, "AppleWebKit")) {
- $browser = "チーターブラウザ (エクストリームスピードモード)";
- }
- }
- elseif(stripos($ua, "YLMFBR")) {
- $browser = "115 ブラウザ";
- }
- elseif(stripos($ua, "QQBrowser")) {
- if (stripos($ua, "Trident")) {
- $browser = "QQ ブラウザ(互換モード)";
- }
- elseif(stripos($ua, "AppleWebKit")) {
- $browser = "QQ ブラウザ (エクストリーム スピード モード)";
- }
- }
- elseif(stripos($ua, "TencentTraveler")) {
- $ブラウザ = "テンセント TT ブラウザ";
- }
- elseif(stripos($ua, "TaoBrowser")) {
- if (stripos($ua, "Trident")) {
- $browser = "タオバオ ブラウザ (互換モード)" ;
- }
- elseif(stripos($ua, "AppleWebkit")) {
- $browser = "タオバオ ブラウザ (エクストリーム スピード モード)";
- }
- }
- elseif(stripos($ua, "CoolNovo")) {
- $browser = "メイプルブラウザ";
- }
- elseif(stripos($ua, "SaaYaa")) {
- $browser = "Flash ブラウザ";
- }
- elseif(stripos($ua, "360SE" )) {
- $browser = "360 セーフ ブラウザ";
- }
- elseif(stripos($ua, "360EE")) {
- if (stripos($ua, "Trident")) {
- $browser = "360 非常に高速なブラウザ(互換モード)";
- }
- elseif(stripos($ua, "AppleWebkit")) {
- $browser = "360 超高速ブラウザ (超高速モード)";
- }
- }
- elseif(stripos($ua, "Konqueror")) {
- $browser = "Konqueror";
- }
- elseif(stripos($ua, "Chrome")) {
- $browser = "Google Chrome";
- }
- elseif(stripos($ ua, " Safari")) {
- $browser = "Safari";
- }
- elseif(stripos($ua, "MSIE")) {
- $ver =explode(";", substr($ua,tripos($ua, " MSIE") + 5, 4));
- $ver = $ver[0];
- $browser = "IE ".$ver;
- }
- elseif(stripos($ua, "UCWEB")) {
- $browser = "UCWEB ブラウザ";
- }
- elseif(stripos($ua, "WAP")) {
- $browser = "モバイル ブラウザ";
- } else {
- $browser = $ua;
- }
- if ($browser = = '') $browser = $ua;
- return $browser;
- }
- /*オペレーティング システムのバージョンを取得*/
- function os($ua) {
- $os = "";
- if (stripos ($ua, " Googlebot")) {
- $os = "Google Spider";
- }
- elseif(stripos($ua, "Baidusspider") !== false) {
- $os = "Baidusspider";
- }
- elseif(stripos($ ua, "Yahoo!") !== false) {
- $os = "Yahoo Spider";
- }
- elseif(stripos($ua, "bingbot")) {
- $os = "must Ying Spider";
- }
- elseif(stripos($ua, "YRSpider")) {
- $os = "YRSpider";
- }
- elseif(stripos($ua, "Yeti") !== false) {
- $os = "ネイバースパイダー" ;
- }
- elseif(stripos($ua, "Windows NT")) {
- switch (substr($ua,tripos($ua, "Windows NT") + 11, 3)) {
- case 5.0:
- {
- $os = "Windows 2000";
- ブレーク;
- }
- ケース 5.1:
- {
- $os = "Windows XP";
- ブレーク;
- }
- ケース 5.2:
- {
- $os = "Windows 2003";
- ブレーク;
- }
- ケース 6.0:
- {
- $os = "Windows Vista/2008";
- ブレーク;
- }
- ケース 6.1:
- {
- $os = "Windows 7";
- ブレーク ;
- }
- ケース 6.2:
- {
- $os = "Windows 8";
- ブレーク;
- }
- デフォルト:
- {
- $os = "Windows";
- ブレーク;
- }
- }
- if (stripos($ua , "WOW64")) {
- $os.= "(X64)";
- } else {
- $os.= "(X86)";
- }
- }
- elseif(stripos($ua, "Android")) {
- $os = substr($ ua、stripos($ua, "Android"), 11);
- }
- elseif(stripos($ua, "Linux")) {
- if (stripos($ua, "i686" )) {
- $os = " Linux X86";
- } else {
- $os = "Linux";
- }
- if (stripos($ua, "X11")) {
- $os.= "(X Window) ";
- }
- }
- elseif (stripos($ua, "Macintosh")) {
- $os = "Mac";
- }
- elseif(stripos($ua, "IOS")) {
- $os = "iOS ";
- }
- elseif(stripos ($ua, "ZTE")) {
- $os = "ZTE";
- }
- elseif(stripos($ua, "Windows 98")) {
- $os = "Windows 98 ";
- }else {
- $os = "不明なシステム";
- }
- return $os;
- }
-
- imagettftext($im, $size, $angle, 10, 15, $grey, $font, "現在のアドレス:".address ($_SERVER['REMOTE_ADDR']));
- imagettftext($im, $size, $angle, 10, 35, $grey, $font, "現在の IP:".$_SERVER['REMOTE_ADDR']);
- imagettftext ($im, $size, $angle, 10, 55, $grey, $font, "現在のブラウザ:".browser($useragent));
- imagettftext($im, $size, $angle, 10, 75, $ grey, $font, "現在のオペレーティング システム:".os($useragent));
- imagettftext($im, $size, $angle, 10, 95, $grey, $font, $signature!=""?$ 署名:" Computer Mutual Aid Network www.pc811.com");
-
-
- imagepng($im);
- imagedestroy($im);
- ?>
コードをコピー
|