Maison développement back-end Problème PHP Comment obtenir des images réseau et les convertir en base64 en PHP

Comment obtenir des images réseau et les convertir en base64 en PHP

Mar 29, 2023 am 10:13 AM

Dans le développement et la conception de sites Web, il est souvent nécessaire d'utiliser des images externes pour enrichir le contenu et l'esthétique de la page. Cependant, pour certaines raisons, nous devons parfois convertir les images réseau au format de chaîne base64. Cet article explique comment utiliser PHP pour obtenir des images réseau et les convertir au format base64.

1. Utilisez PHP pour obtenir des images Web

Tout d'abord, nous devons obtenir les données binaires des images Web. En PHP, on peut utiliser la bibliothèque curl pour obtenir des ressources réseau. L'utilisation de la bibliothèque curl nécessite les étapes suivantes :

1. Initialiser curl :
Utilisez la fonction curl_init() pour initialiser curl, qui renverra un handle curl qui pourra être utilisé pour des opérations ultérieures, telles que l'obtention de ressources, la définition d'options, etc. . Après l'initialisation, les options curl peuvent être définies à l'aide de la fonction curl_setopt().

$ch = curl_init();
Copier après la connexion

2. Définir les options curl :
Définissez les options curl pour demander des ressources réseau et obtenir des données binaires. Les options qui doivent être définies incluent l'URL, la méthode de demande, l'inclusion ou non des informations d'en-tête, etc.

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
Copier après la connexion

Parmi eux, $url est l'adresse URL de l'image réseau à obtenir, l'option CURLOPT_RETURNTRANSFER renverra le contenu de la fonction curl_exec() sous forme de chaîne au lieu de le sortir directement, et l'option CURLOPT_BINARYTRANSFER renverra le contenu sans en-têtes HTTP.

3. Exécuter la requête curl :
Utilisez la fonction curl_exec() pour exécuter la requête curl et renvoyer les données binaires de réponse.

$image_data = curl_exec($ch);
Copier après la connexion

4. Fermez le handle de ressource curl :
Utilisez la fonction curl_close() pour fermer le handle de ressource curl.

curl_close($ch);
Copier après la connexion

Jusqu'à présent, nous avons utilisé curl pour obtenir les données binaires des images réseau. Nous verrons ensuite comment convertir ces données binaires au format de chaîne base64.

2. Convertir les données binaires au format de chaîne base64

PHP fournit la fonction base64_encode() pour convertir les données binaires au format de chaîne base64. Voici un exemple simple d'utilisation de cette fonction :

$image_base64 = base64_encode($image_data);
Copier après la connexion

Ici, $image_data sont les données binaires de l'image réseau obtenues à l'étape précédente, et $image_base64 sont les données converties au format chaîne base64. Il convient de noter que la chaîne base64 convertie ne contient pas le préfixe "data:image/png;base64,". Si vous devez ajouter ce préfixe, vous pouvez utiliser le code suivant :

$image_base64 = "data:image/png;base64," . base64_encode($image_data);
Copier après la connexion

3. Convertissez les images réseau directement en Format de chaîne base64

En plus d'utiliser curl pour obtenir des données binaires d'images réseau, PHP fournit également la fonction file_get_contents() pour obtenir directement des images réseau et les convertir au format de chaîne base64. Le code permettant d'utiliser cette méthode pour obtenir des images réseau est très concis :

$image_data = file_get_contents($url);
$image_base64 = "data:image/png;base64," . base64_encode($image_data);
Copier après la connexion

Il est à noter que l'utilisation directe de la fonction file_get_contents() pour obtenir des ressources réseau bloquera le processus PHP et devra être traitée dans une tâche asynchrone pour éviter d'affecter les tâches ultérieures. opérations.

Pour résumer, en utilisant la fonction curl ou file_get_contents, nous pouvons convertir des images Web au format de chaîne base64 pour enrichir la conception de notre site Web.

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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

OWASP Top 10 PHP: Décrivez et atténue les vulnérabilités communes. OWASP Top 10 PHP: Décrivez et atténue les vulnérabilités communes. Mar 26, 2025 pm 04:13 PM

L'article traite des 10 meilleures vulnérabilités de l'OWASP dans les stratégies PHP et d'atténuation. Les problèmes clés incluent l'injection, l'authentification brisée et les XS, avec des outils recommandés pour surveiller et sécuriser les applications PHP.

PHP 8 JIT (juste à temps) Compilation: comment cela améliore les performances. PHP 8 JIT (juste à temps) Compilation: comment cela améliore les performances. Mar 25, 2025 am 10:37 AM

La compilation JIT de PHP 8 améliore les performances en compilant le code fréquemment exécuté en code machine, bénéficiant aux applications avec des calculs lourds et en réduisant les temps d'exécution.

Encryption PHP: cryptage symétrique vs asymétrique. Encryption PHP: cryptage symétrique vs asymétrique. Mar 25, 2025 pm 03:12 PM

L'article traite du cryptage symétrique et asymétrique en PHP, en comparant leur aptitude, leurs performances et leurs différences de sécurité. Le chiffrement symétrique est plus rapide et adapté aux données en vrac, tandis que l'asymétrique est utilisé pour l'échange de clés sécurisé.

Téléchargements de fichiers sécurisés PHP: prévention des vulnérabilités liées au fichier. Téléchargements de fichiers sécurisés PHP: prévention des vulnérabilités liées au fichier. Mar 26, 2025 pm 04:18 PM

L'article traite de la sécurisation des téléchargements de fichiers PHP pour éviter les vulnérabilités comme l'injection de code. Il se concentre sur la validation du type de fichier, le stockage sécurisé et la gestion des erreurs pour améliorer la sécurité de l'application.

Authentification PHP & amp; Autorisation: mise en œuvre sécurisée. Authentification PHP & amp; Autorisation: mise en œuvre sécurisée. Mar 25, 2025 pm 03:06 PM

L'article examine la mise en œuvre d'authentification et d'autorisation robustes dans PHP pour empêcher un accès non autorisé, détaillant les meilleures pratiques et recommandant des outils d'amélioration de la sécurité.

Protection PHP CSRF: comment empêcher les attaques du CSRF. Protection PHP CSRF: comment empêcher les attaques du CSRF. Mar 25, 2025 pm 03:05 PM

L'article traite des stratégies pour prévenir les attaques du CSRF dans PHP, notamment en utilisant des jetons CSRF, des cookies de même site et une bonne gestion de session.

Validation d'entrée PHP: meilleures pratiques. Validation d'entrée PHP: meilleures pratiques. Mar 26, 2025 pm 04:17 PM

L'article traite des meilleures pratiques pour la validation des entrées PHP pour améliorer la sécurité, en se concentrant sur des techniques telles que l'utilisation de fonctions intégrées, une approche de liste blanche et une validation côté serveur.

Limitation du taux de l'API PHP: stratégies de mise en œuvre. Limitation du taux de l'API PHP: stratégies de mise en œuvre. Mar 26, 2025 pm 04:16 PM

L'article traite des stratégies de mise en œuvre de la limitation du taux d'API en PHP, y compris des algorithmes comme un godet de jeton et un seau qui fuit, et en utilisant des bibliothèques comme Symfony / Rate-Limiter. Il couvre également la surveillance, l'ajustement dynamiquement des limites de taux et la main

See all articles