1--TEST-- 2imagecreatefromstring 3--SKIPIF-- 4<?php 5 if (!function_exists('imagecreatefromstring')) die("skip gd extension not available\n"); 6 if (!function_exists('imagepng')) die("skip no imagpng()\n"); 7?> 8--FILE-- 9<?php 10$dir = __DIR__; 11 12$im = imagecreatetruecolor(5,5); 13imagefill($im, 0,0, 0xffffff); 14imagesetpixel($im, 3,3, 0x0); 15imagepng($im, $dir . '/tc.png'); 16 17$im_string = file_get_contents(__DIR__ . '/tc.png'); 18$im = imagecreatefromstring($im_string); 19echo 'createfromstring truecolor png: '; 20if (imagecolorat($im, 3,3) != 0x0) { 21 echo 'failed'; 22} else { 23 echo 'ok'; 24} 25echo "\n"; 26unlink($dir . '/tc.png'); 27 28 29 30$im = imagecreate(5,5); 31$c1 = imagecolorallocate($im, 255,255,255); 32$c2 = imagecolorallocate($im, 255,0,0); 33imagefill($im, 0,0, $c1); 34imagesetpixel($im, 3,3, $c2); 35imagepng($im, $dir . '/p.png'); 36 37$im_string = file_get_contents(__DIR__ . '/p.png'); 38$im = imagecreatefromstring($im_string); 39 40echo'createfromstring palette png: '; 41 42$c = imagecolorsforindex($im, imagecolorat($im, 3,3)); 43$failed = false; 44if ($c['red'] != 255 || $c['green'] != 0 || $c['blue'] != 0) { 45 echo 'failed'; 46} else { 47 echo 'ok'; 48} 49echo "\n"; 50unlink($dir . '/p.png'); 51 52 53//empty string 54try { 55 imagecreatefromstring(''); 56} catch (ValueError $exception) { 57 echo $exception->getMessage() . "\n"; 58} 59//random string > 12 60$im = imagecreatefromstring(' asdf jklp foo'); 61?> 62--EXPECTF-- 63createfromstring truecolor png: ok 64createfromstring palette png: ok 65 66Warning: imagecreatefromstring(): Data is not in a recognized format in %s on line %d 67 68Warning: imagecreatefromstring(): Data is not in a recognized format in %s on line %d 69