imagecreate 


gd apg

CREATE a new palette based image.





PALETTE IMAGE

is the designation term for images with a small number of colors.
For this type of image, a maximum of 256 colors are accepted.

Under PHP 7 or lower, this function returns a RESOURCE, however, under PHP 8 it returns an OBJECT.

We will call both RESOURCE and OBJECT, simply, IDENTIFIER that can also be represented by: GdImage.



<?php

GdImage
|false imagecreate int $width int $height )

where,

$width The image width in pixels

$height 
The image height in pixels

?>

  $width   


The image width in pixels.



  $height   


The image height in pixels.



  1 EXERCISE   

<?php

/*

   This exercise does not display any image, 
   it just displays the identifier: GdImage
   
   This will be displayed using another function
   
   So be patient!

*/
  
   
$w01 100;
   
   
$h01 100;
   
$img01 imagecreate$w01$h01 );

if(
PHP_MAJOR_VERSION <= 7)
{
    echo 
PHP_VERSION '<br>';
    echo 
$img01;
}
else
{   
    echo 
PHP_VERSION '<br>';
    
var_dump($img01);
}

?> 

  2 EXERCISE   

<?php

/*

   This exercise does not display any image, 
   it just displays the identifier: GdImage
   
   This will be displayed using another function
   
   So be patient!

*/
  
   
$w02 100;
   
   
$h02 80;
   
$img02 imagecreate$w02$h02 );

var_dump($img02);

?> 

  3 EXERCISE   

<?php

/*

   This exercise does not display any image, 
   it just displays the identifier: GdImage
   
   This will be displayed using another function
   
   So be patient!

*/

    
if (!extension_loaded("gd")) 
        die(
"skip GD not present");
    if (!
function_exists("imagecreate")) 
        die(
"skip GD Version not compatible");

function 
trycatch_dump(...$tests) {
    foreach (
$tests as $test) {
        try {
            
var_dump($test());
            echo 
'<br><br>';
        }
        catch (
\Error $e) {
            echo 
'!! [' get_class($e) . '] ' 
            
$e->getMessage() . "<br><br>";
        }
    }
}

trycatch_dump(
    fn() => 
imagecreate(1010),
    fn() => 
imagecreate(-130), 
    fn() => 
imagecreate(30, -1)
);

?>

 RESULT   

Caution ...

Negative values are not accepted ...
... for both width and length.