Je conçois un site web et je dois:
Essentiellement le téléchargement d'images de base
Au lieu d’écrire moi-même, j’essaie de trouver un php class qui me permette de faire tout cela, car, comme l’a dit Jeff Atwood, "ne concevez jamais ce que vous pouvez voler"
Maintenant, avant d’aller de l’avant, je n’ai pas fait mes recherches, j’ai fait:
Googler cela apporte une énorme quantité de résultats, qui est le problème, je ne sais pas quels résultats sont utiles et lesquels sont des ordures!
Jusqu'à présent, j'ai trouvé:
Quelqu'un at-il une expérience avec ces cours? Pouvez-vous recommander une classe de téléchargement d'image exceptionnelle?
J'ai tendance à utiliser un cadre d'une description ou d'une autre, qui couvre la partie téléchargement de fichier. Cependant, faites une recommandation pour le recadrage:
Imagine - https://github.com/avalanche123/Imagine
Et si vous voulez que le téléchargeur soit un peu meilleur qu'un simple type d'entrée = fichier, essayez:
Ma bibliothèque de manipulation d'images préférée est WideImage
. Il est ridiculement facile de faire ce genre de tâche.
WideImage::load('pic.png')
->crop('center', 'center', 90, 50)->saveToFile('cropped/pic.jpg');
Pour valider s’il s’agit d’une image ou non, utilisez finfo
ou PEAR::Mime_type
. Personnellement, je préfère PEAR::Mime_Type
. Il utilise finfo
mais son utilisation est plus simple.
Utilisation de finfo
:
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mimetype = finfo_file($finfo, $filename);
$isImage = (preg_match('#^image/#', $mimetype) === 1);
Utilisation de PEAR::Mime_Type
:
$mimetype = MIME_Type::autoDetect($filename);
$isImage = MIME_Type::wildcardMatch('image/*', $mimetype);
Découvrez le plugin JCROP
_ {Cela sera utile pour tous} _
Le téléchargement de classe depuis Colin Verot http://www.verot.net/php_class_upload.htm est mon préféré. Je l'utilise dans tous mes projets. Aimez votre façon de parler avec la classe et d’utiliser uniquement ce dont vous avez besoin, mais vous donne beaucoup de configuration/méthodes pour l’ajuster à vos besoins. Grande classe!
il y a aussi cette bibliothèque légère de manipulation d’images écrite en PHP appelée Zebra_Image qui est très petite, pas encombrée de zillions de fonctions que vous n’utiliserez jamais, hautement optimisée, avec un une excellente documentation et qui est activement maintenue.
Je recommande d'utiliser Smart Image Resizer http://shiftingpixel.com/2008/03/03/smart-image-resizer/
Vous obtenez la meilleure qualité d'image après redimensionnement
C'est extrêmement simple à utiliser. Il utilise le cache d'image.
Je recommande SimpleImage , il est très simple, ne contient qu'un fichier et est mis à jour.
Exemple d'utilisation:
$img = new SimpleImage('image.jpg');
// Resize the image to 320x200
$img->resize(320, 200);
$img->save('new-image.jpg');
Si vous souhaitez migrer vers un framework MVC PHP, je vous recommande vivement Codeigniter .
En plus de plusieurs autres classes et bibliothèques qui gèrent la pagination, les tables, la sécurité, les formulaires, etc., CI possède également des classes de téléchargement et de manipulation d’images très pratiques et flexibles. Je crois qu’ils peuvent faire tout ce dont vous avez besoin (mais vous n’êtes pas sûr de la conversion jpg).
Vous pouvez les vérifier à:
J'utilise cette image, ça marche bien