Imagick für PHP4 auf Debian Server - existiert, funkt. nicht
fudur
- webserver
Hallo,
dies ist mein erster Eintrag hier und ich würde mich sehr freuen, wenn ihr mir weiter helfen könntet.
Ich möchte gerne ImageMagick für PHP4 auf meinem Debian vServer laufen lassen. Die Installation verlief eigentlich ohne Fehler, nur verwenden kann ich Imagick irgendwie trotzdem nicht.
Installiert habe ich Imagick wie folgt:
apt-get install imagemagick
apt-get install php4-imagick
Dann habe ich meinen Server neu gestartet.
Wenn ich nun anschließend phpinfo aufrufe, wird Imagick auch aufgelistet:
Magick Backend: ImageMagick
ImageMagick version: 6.0.6
PHP imagick version: 0.9.11
MaxRGB: 65535
Supported image formats: tmp
Font Family - Name: AvantGarde - AvantGarde-Book
Wenn ich allerdings die Erweiterung nutzen möchte, mit folgendem Beispiel:
$im = new Imagick();
$im->newPseudoImage(400, 200, "test");
$im->setImageFormat( "png") ;
header( "Content-Type: image/png" );
echo $im;
erhalte ich nur diese Fehlermeldung:
Fatal error: Cannot instantiate non-existent class: imagick
Weiß jemand, warum die Erweiterung so noch nicht funktioniert?
VIELEN DANK!
Hello,
Wenn ich allerdings die Erweiterung nutzen möchte, mit folgendem Beispiel:
$im = new Imagick();
$im->newPseudoImage(400, 200, "test");
$im->setImageFormat( "png") ;
header( "Content-Type: image/png" );
echo $im;erhalte ich nur diese Fehlermeldung:
Fatal error: Cannot instantiate non-existent class: imagick
Ich habe bei mir auch ImageMagick für PHP installiert, allerdings für PHP5
Eine Klasse "imagick" habe ich aber auch nicht, nur einen Haufen "normaler" Funtionen.
<?php ### show_classes.php ###
echo "<pre>\r\n";
$_classes = get_declared_classes();
asort($_classes);
echo htmlspecialchars(print_r($_classes,1));
echo "<br>\nAnzahl der deklarierten Klassen: ".count($_classes)."<br>\r\n";
echo "</pre>\r\n";
?>
Mit dem obigen kleinen Script kannst Du feststellen, welche Klassen deklariert sind.
Ich suche mal weiter. Vermutlich muss man für die Nutzung der ImageMagick-Klasse ein Shared Object File einbinden in der php.ini
Tom vom Berg
http://bergpost.annerschbarrich.de
.
Hallo Tom,
<?php ### show_classes.php ###
echo "<pre>\r\n";
$_classes = get_declared_classes();
asort($_classes);
echo htmlspecialchars(print_r($_classes,1));
echo "<br>\nAnzahl der deklarierten Klassen: ".count($_classes)."<br>\r\n";
echo "</pre>\r\n";?>
Mit dem obigen kleinen Script kannst Du feststellen, welche Klassen deklariert sind.
Ich suche mal weiter. Vermutlich muss man für die Nutzung der ImageMagick-Klasse ein Shared Object File einbinden in der php.ini
tausen Dank für Deine Antwort! Wenn ich Dein Skript ausführe, erhalte ich folgenden Output:
-----------------------------
Array
(
[2] => Directory
[18] => XPathContext
[19] => XPathObject
[20] => XsltStylesheet
[1] => __PHP_Incomplete_Class
[9] => domattribute
[10] => domcdata
[12] => domcomment
[4] => domdocument
[6] => domdocumenttype
[8] => domelement
[15] => domentity
[16] => domentityreference
[17] => domnamespace
[3] => domnode
[14] => domnotation
[5] => domparser
[13] => domprocessinginstruction
[11] => domtext
[7] => dtd
[0] => stdClass
)
Anzahl der deklarierten Klassen: 21
-----------------------------
Damit kann ich allerdings nicht so viel anfangen. Imagick kann ich hier nicht finden. Wäre toll, wenn Du nochmal antworten würdest, falls Du bei dem Problem weiterkommst.
Weiß sonst noch jemand eine Lösung?
DANKE!
Hello,
Damit kann ich allerdings nicht so viel anfangen. Imagick kann ich hier nicht finden. Wäre toll, wenn Du nochmal antworten würdest, falls Du bei dem Problem weiterkommst.
Weiß sonst noch jemand eine Lösung?
Man mus die PECL-Erweiterung installieren. Das ist aber nicht mit "Klick" getan.
Ein harzliches Glückauf
Tom vom Berg
http://bergpost.annerschbarrich.de