[펌]http://phpleader.net/bbs/view.php?&ss[fc]=3&bbs_id=php_04&page=7&doc_num=192
function fetch_url($url) {
$url_parsed = parse_url($url);
$host = $url_parsed["host"];
$port = $url_parsed["port"];
if($port==0) $port = 80;
$path = $url_parsed["path"];
if(empty($path)) $path = "/";
if(empty($host)) return false;
if($url_parsed["query"] != "") $path .= "?".$url_parsed["query"];
$out = "GET ".$path." HTTP/1.0\r\nHost: ".$host."\r\n\r\n";
$fp = fsockopen($host, $port, $errno, $errstr, 30);
usleep(50);
if($fp) {
socket_set_timeout($fp, 30);
fwrite($fp, $out);
$body = false;
while(!feof($fp)) {
$buffer = fgets($fp, 128);
if($body) $content .= $buffer;
if($buffer=="\r\n") $body = true;
}
fclose($fp);
}else {
return false;
}
return $content;
}
$image = fetch_url("url");
$f = fopen("./data/test.jpg","w");
$lock=flock($f,2);
if($lock) {
fwrite($f,$image);
}
flock($f,3);
fclose($f);
php
이미지 다운로드시 무조건 다운로드창 뜨게 하기
관절분리
2016. 1. 25. 14:36
반응형
1.
$fileName = "a.gif";
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment;filename=".$fileName);
header("Content-Transfer-Encoding: binary");
Header("Cache-Control: cache, must-revalidate");
readfile($fileName);
2.
$f_src = "이미지경로" ;
$f=@fopen($f_src,"r");
Header("Content-type: application/plain");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Cache-Control: must-revalidate");
Header("Content-Disposition: attachment; filename=파일명 지정가능");
Header("Content-Description: PHP Generated Data");
while( $data = fread($f, filesize($f_src)) ){
print($data);
}
3.
[PHP] socket이용한 타사이트 이미지 읽기
반응형