note 111827 added to function.getimagesizefromstring
| From: | jxwangchao at gmail dot com | Date: | Tue, 02 Apr 2013 14:59:28 +0000 |
| Subject: | note 111827 added to function.getimagesizefromstring | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-194293@lists.php.net to get a copy of this message | ||
php<5.4 getimagesizefromstring
class getImgStream{
private $imgStream;
private $position;
function stream_open($path, $mode, $options, &$opened_path){
$url = parse_url($path);
$this->imgStream = $GLOBALS[$url["host"]];
$this->position = 0;
return true;
}
function stream_read($count){
$ret = substr($this->imgStream, $this->position, $count);
$this->position += strlen($ret);
return $ret;
}
function stream_stat(){
//maxmemory: 5 * 1024 * 1024;
$fp = fopen("php://temp/maxmemory:5242880", 'r+');
fwrite($fp, $this->imgStream);
$fstat = fstat($fp);
fclose($fp);
return $fstat;
}
function stream_eof(){
return $this->position >= strlen($this->imgStream);
}
function stream_tell(){
return $this->position;
}
function stream_close(){
unset($this->imgStream, $this->position);
}
}
$file_path = 'http://www.baidu.com/img/shouye_b5486898c692066bd2cbaeda86d74448.gif';
$stream = file_get_contents($file_path);
stream_wrapper_register("image", "getImgStream");
print_r(getimagesize('image://stream'));
$new_img = imagecreatefromgif('image://stream');//æè
$new_img =
imagecreatefromstring($stream);
print_r($new_img);
imagejpeg($new_img, 'E:\WEB\uploads\test.jpg', 100);
----
Server IP: 69.147.83.199
Probable Submitter: 218.59.28.95
----
Manual Page -- http://php.net/manual/en/function.getimagesizefromstring.php
Edit -- https://master.php.net/note/edit/111827
Del: integrated -- https://master.php.net/note/delete/111827/integrated
Del: useless -- https://master.php.net/note/delete/111827/useless
Del: bad code -- https://master.php.net/note/delete/111827/bad+code
Del: spam -- https://master.php.net/note/delete/111827/spam
Del: non-english -- https://master.php.net/note/delete/111827/non-english
Del: in docs -- https://master.php.net/note/delete/111827/in+docs
Del: other reasons-- https://master.php.net/note/delete/111827
Reject -- https://master.php.net/note/reject/111827
Search -- https://master.php.net/manage/user-notes.php