Hio,
schreibe gerade ein kleines Skript, welches ein Thumbnail erzeugen soll. Wobei wenn die Funktion imagecopyresampled zur Verfügung steht soll dieses, ansonsten imagecopyresized verwendet werden.
Ich habe die ganze Zeit in der php.ini, die php_gd2.dll geladen und hat soweit alles Funktioniert, nachdem ich nun auf php_gd.dll umgestellt habe hakelt es Fehlermeldungen.
Warning: imagecopyresampled(): requires GD 2.0 or later in ...
bloss das ganze kann ich nun nicht mehr nachvollziehen.
<schnipp>
if (function_exists("imagecopyresampled")) {
$this->_gdMajorVersion = 2;
$this->_resizeImageFunction = "imagecopyresampled"; }
else {
$this->_gdMajorVersion = 1;
$this->_resizeImageFunction = ($this->useResampleBicubic = "on") ? "$"."this->imageCopyResampleBicubic" : "imagecopyresampled"; }
</schnipp>
Ich prüfe hier, ob es eine Funktion imagecopyresampled überhaupt gibt. Dies scheint komischerweise der Fall zu sein. Dem bin ich nachgegangen und habe mit
var_dump(get_extension_funcs("gd"));
mit alle Funktionen von gd anzeigen lassen und ... finde einen Eintrag imagecopyresampled. hmmm ??? finde ich etwas verwundetlich, ich benutze gd version 1.6.3
Wie kann ich nun prüfen ob die Funktion nun _wirklich_ zur Verfügung steht? Die Möglichkeit phpinfo(8) zu parsen und die Version zu extrahieren finde ich nicht so dolle (muss ja die Ausgabe über buffering verhindern und diesen Teil herausschneiden), strebe daher eine andere an.
gl & hf
Thorsten