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 스파이더";
- }
- elseif(stripos($ua, "Baiduspider") !== false) {
- $browser = "Baidu 스파이더";
- }
- elseif(stripos($ua, "Yahoo!") !== false) {
- $browser = "야후 스파이더";
- }
- elseif( Stripos( $ua, "bingbot")) {
- $browser = "Bingbot";
- }
- elseif(stripos($ua, "YRSpider")) {
- $browser = " 운남 스파이더";
- }
- elseif(stripos($ua, "예티") !== false) {
- $browser = "네이버 스파이더";
- }
- elseif(stripos ($ua, " Maxthon")) {
- if (stripos($ua, "AppleWebKit")) {
- $browser = "Maxthon";
- }
- elseif (stripos($ua, "Trident")) {
- $browser = "Aoyou 브라우저(호환 모드)";
- }
- elseif(stripos($ua, "MAXTHON 2.0")) {
- $browser = "訨游 브라우저 2.0";
- }
- }
- elseif(stripos($ua, "Firefox")) {
- $browser = "Firefox 브라우저";
- }
- elseif(stripos($ua, " Opera") == 0 && Stripos($ua, "Presto")) {
- $browser = "Opera";
- }
- elseif( Stripos($ua, "BIDUBrowser")) {
- if (stripos($ua, "Trident")) {
- $browser = "Baidu 브라우저(호환 모드)";
- }
- elseif(stripos($ua, "AppleWebKit")) {
- $browser = "Baidu 브라우저(극단 속도 모드)";
- }
- }
- elseif(stripos($ua, "Ruibin" )) {
- $browser = "Ruiying 브라우저 ";
- }
- elseif(stripos($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")) {
- $browser = "Tencent 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 = "플래시 브라우저";
- }
- 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, "Chrome ")) {
- $browser = "Konqueror";
- }
- elseif(stripos($ua, "Chrome ")) {
- $browser = "Google 크롬";
- }
- elseif(stripos($ua, "Safari")) {
- $browser = "Safari";
- }
- elseif( Stripos($ua, "MSIE")) {
- $ver = 폭발(";", substr($ua, Stripos($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 스파이더";
- }
- elseif (stripos($ua, " Baiduspider") !== false) {
- $os = "Baiduspider";
- }
- elseif(stripos($ua, "Yahoo!") !== false ) {
- $os = "야후 스파이더";
- }
- elseif(stripos($ua, "bingbot")) {
- $os = "Bingbot";
- }
- elseif(stripos($ua, " YRSpider")) {
- $os = "YRSpider";
- }
- elseif(stripos($ua, "Yeti") !== false) {
- $os = "네이버 스파이더";
- }
- elseif(stripos($ua, "Windows NT")) {
- 스위치 (substr($ua, Stripos($ua, "Windows NT") 11, 3)) {
- 사례 5.0:
- {
- $os = "Windows 2000";
- 중단;
- }
- 사례 5.1:
- {
- $os = "Windows XP";
- break;
- }
- 사례 5.2:
- {
- $os = "Windows 2003";
- break;
- }
- 사례 6.0:
- {
- $os = "Windows Vista/2008";
- break;
- }
- 사례 6.1:
- {
- $os = "Windows 7 ";
- break;
- }
- 사례 6.2:
- {
- $os = "Windows 8";
- break;
- }
- 기본값:
- {
- $os = "Windows";
- break;
- }
- }
- 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!=""?$signature:" 컴퓨터 공제 네트워크 www.pc811.com");
-
-
- imagepng($im);
- imagedestroy($im);
- ?>
코드 복사
|