Que dois-je faire si php ne peut pas ouvrir la bibliothèque gd ?

藏色散人
Libérer: 2023-03-17 13:48:02
original
2205 Les gens l'ont consulté

Solution au problème selon lequel PHP ne peut pas ouvrir la bibliothèque gd : 1. Recherchez et ouvrez le fichier de configuration php.ini ; 2. Supprimez le symbole de commentaire ";" devant "extension_dir" ; chemin du dossier ext C'est tout.

Que dois-je faire si php ne peut pas ouvrir la bibliothèque gd ?

L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur Dell G3.

Que dois-je faire si php ne peut pas ouvrir la bibliothèque gd ?

Résolu le problème de l'ouverture invalide de la bibliothèque gd en PHP

J'ai récemment dû réinstaller PHP. J'utilisais XAMPP et je n'avais pratiquement pas besoin de le configurer moi-même. Maintenant, je vais télécharger directement le fichier. version originale officielle d'Apache et PHP et faites-le moi-même Explorez lentement comment hériter de la configuration.

La version d'Apache que j'ai téléchargée est la 2.2.25 et la version de PHP est la 5.4.19. Après avoir intégré Apache et PHP et l'avoir configuré (le répertoire d'installation de PHP est : F:php5.4.19), rappelez-vous que PHP n'active pas la bibliothèque GD. support par défaut. Doit être activé par vous-même. J'ai donc ouvert le répertoire d'installation de PHP/fichier de configuration php.ini et j'ai trouvé le contenu suivant :

;extension=php_gd2.dll
Copier après la connexion

Selon la méthode trouvée sur Internet, supprimez le symbole ";" devant le commentaire, puis redémarrez le serveur Apache. Il s'avère que cela ne fonctionne toujours pas. Pass La fonction phpinfo() ne peut toujours pas voir les informations relatives à la bibliothèque GD. J'ai vu de nombreux articles sur Internet sur "Ouvrir la bibliothèque GD en PHP". Ils disaient tous simplement "supprimer le point-virgule devant xxx", et il n'y avait aucune autre explication. Les faits ont prouvé que cela n'est évidemment pas suffisant, du moins la version zip officielle de PHP ne peut pas être configurée de cette manière.

J'ai donc dû vérifier moi-même le contenu de configuration de php.ini, et j'ai finalement trouvé la ligne suivante :

;extension_dir = "ext"
Copier après la connexion

Évidemment, la directive extension_dir a été commentée, ce qui a empêché PHP de trouver le dossier ext de l'extension. bibliothèque Naturellement, ce n'est pas possible. Vous avez peut-être trouvé php_gd2.dll dans la bibliothèque d'extension, et le support de la bibliothèque gd n'est naturellement pas activé.

J'ai donc fait de mon mieux pour supprimer le symbole de commentaire ";" devant la commande extension_dir et j'ai redémarré le serveur, mais... cela n'a toujours pas fonctionné. Ce n'est pas scientifique. Y a-t-il un problème avec la valeur « ext » de la directive extension_dir ?

Le responsable PHP a déclaré que l'emplacement par défaut de la bibliothèque d'extension de recherche PHP5 est C:php5, j'ai donc essayé de suivre la déclaration officielle tout en laissant extension_dir commenté, j'ai créé un nouveau dossier php5 sous le lecteur C, puis j'ai modifié php_gd2 Copiez le .dll dedans et redémarrez le serveur, mais le résultat... ne fonctionne toujours pas.

À ce moment-là, grâce à la fonction phpinfo(), nous avons constaté que lorsque la directive extension_dir n'était pas activée dans php.ini, la valeur affichée par extension_dir sur phpinfo() était en fait C:php - Se pourrait-il que la documentation officielle était-ce également faux ? Ou est-ce que PHP 5.4 a été modifié, mais la documentation officielle n'a pas été mise à jour à temps ? Je me fiche du reste pour l'instant. Essayons d'abord C:php. Ensuite, nous renommons php5 en php. Tout le reste reste comme d'habitude. Ensuite, nous redémarrons le serveur et vérifions que la bibliothèque gd a été ouverte via phpinfo(). fonction. ——Cela prouve au moins que dans PHP 5.4.19, l'emplacement de recherche par défaut pour les bibliothèques d'extensions est C:php.

Bien sûr, comme nous le savons tous, l'instruction extension_dir prend en charge les chemins absolus. J'y ai passé beaucoup de temps, principalement pour comprendre la fonction et l'impact de l'instruction extension_dir.

Enfin, supprimez le symbole de commentaire ";" devant extension_dir, puis remplacez sa valeur par le chemin absolu du dossier ext. Le code détaillé est le suivant :

extension_dir = "F:/php5.4.19/ext"
Copier après la connexion

En résumé, pour la version officielle de php, vous devez activer la prise en charge de la bibliothèque gd, non seulement supprimer le symbole de commentaire avant extension=php_gd2.dll, mais également supprimer le symbole de commentaire avant la directive extension_dir et modifier sa valeur en conséquence. Bien sûr, il ne s'agit pas uniquement de la bibliothèque gd. Si vous devez ouvrir d'autres bibliothèques d'extensions PHP, telles que php_mysql et php_mysqli, la méthode est similaire.

Apprentissage recommandé : "Tutoriel vidéo PHP"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal