php+curl 发送图片处理代码分享 |
本文标签:php,curl,发送图片 //上传页面代码 $url = "http://192.168.1.100/upload.php?lang=cn"; #可以get传相应参数 $file = $path./. $Icon; //要上传的文件 $fields[f] = @.$file; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url ); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, 1 ); curl_setopt($ch, CURLOPT_POSTFIELDS, $fields ); curl_exec( $ch ); if ($error = curl_error($ch) ) { die($error); } curl_close($ch); //接收图片资源 date_default_timezone_set(Asia/Shanghai); //设置时区 $ip = ; if(getenv(HTTP_CLIENT_IP) && strcasecmp(getenv(HTTP_CLIENT_IP), unknown)){ $ip = getenv(HTTP_CLIENT_IP); }elseif(getenv(HTTP_X_FORWARDED_FOR) && strcasecmp(getenv(HTTP_X_FORWARDED_FOR), unknown)){ $ip = getenv(HTTP_X_FORWARDED_FOR); }elseif(getenv(REMOTE_ADDR) && strcasecmp(getenv(REMOTE_ADDR), unknown)){ $ip = getenv(REMOTE_ADDR); }elseif(isset($_SERVER[REMOTE_ADDR]) && $_SERVER[REMOTE_ADDR] && strcasecmp($_SERVER[REMOTE_ADDR], unknown)){ $ip = $_SERVER[REMOTE_ADDR]; } preg_match("/[\d\.]{7,15}/", $ip, $ipmatches); $ip = $ipmatches[0] ? $ipmatches[0] : unknown; //驗證請求IP,设置白名单 $date = date("[Y-m-d H:i:s]"); $allowip = array(192.168.1.100); if(!in_array($ip,$allowip)){ $ipVal = "{$date}{$ip}\n"; file_put_contents(upload_ip.log, $ipVal, FILE_APPEN); die(-1); } //接收get传参 $lang = isset($_REQUEST[lang]) ? $_REQUEST[lang] : CN; $uploaddir = "/data/cdncache/res/gifts/{$lang}/"; $uploadfile = $uploaddir . $_FILES[f][name]; if (move_uploaded_file($_FILES[f][tmp_name], $uploadfile)) #保存图片成功 { $type = $_FILES[f][type]; $tmp_name = $_FILES[f][tmp_name]; $error = $_FILES[f][error]; $size = $_FILES[f][size]; $log_txt = name: . $_FILES[f][name] . type: . $type . tmp_name: . $tmp_name . error: . $error . size: . $size . " hello " . lang: . $_REQUEST[lang]; $value = "{$date}{$log_txt}\n"; @file_put_contents(upload_ok.log, $value, FILE_APPEND); exit(); } else { $type = $_FILES[f][type]; $tmp_name = $_FILES[f][tmp_name]; $error = $_FILES[f][error]; $size = $_FILES[f][size]; $log_txt = name: . $_FILES[f][name] . type: . $type . tmp_name: . $tmp_name . error: . $error . size: . $size . " hello " . lang: . $_REQUEST[lang]; $value = "{$date}{$log_txt}\n"; @file_put_contents(upload_ng.log, $value, FILE_APPEND); exit(); } 以上所述就是本文的全部内容了,希望大家能够喜欢 。 |