Comment puis-je convertir une image d'une URL en encodage Base64 ?
Cela dépend de la raison pour laquelle vous avez besoin de l'image. Si c'est en tant qu'URL en ligne, c'est la solution. Mais ce n'est pas identique au simple encodage base64.
Comment puis-je convertir une image d'une URL en encodage Base64 ?
Cela dépend de la raison pour laquelle vous avez besoin de l'image. Si c'est en tant qu'URL en ligne, c'est la solution. Mais ce n'est pas identique au simple encodage base64.
Excellente astuce, maintenant je vais créer une fonction pour éditer le fichier téléchargé, ou un revert move_uploaded_file(), merci.
Facile :
$imagedata = file_get_contents("/path/to/image.jpg");
// alternatively specify an URL, if PHP settings allow
$base64 = base64_encode($imagedata);
Gardez à l'esprit que cela va agrandir les données de 33%, et vous aurez des problèmes avec les fichiers dont la taille dépasse votre capacité de stockage. memory_limit
.
Utilisez également cette méthode pour représenter une image dans un format codé en Base64...
Trouvez la fonction PHP file_get_content
et ensuite utiliser la fonction base64_encode
.
Et obtenir le résultat pour préparer la chaîne comme data:" . file_mime_type . " base64_encoded string
. Utilisez-le dans le img
src
attribut. Le code suivant peut être utile :
// A few settings
$img_file = 'raju.jpg';
// Read image path, convert to base64 encoding
$imgData = base64_encode(file_get_contents($img_file));
// Format the image SRC: data:{mime};base64,{data};
$src = 'data: '.mime_content_type($img_file).';base64,'.$imgData;
// Echo out a sample image
echo '<img src="'.$src.'">';
Si vous ne trouvez pas la fonction mime_content_type, ajoutez simplement la fonction de svogal de php.net/manual/fr/function.mime-content-type.php
<img src="data:image/png;base64,<?php echo base64_encode(file_get_contents("IMAGE URL HERE")) ?>">
J'ai essayé d'utiliser cette ressource, mais j'obtenais toujours une erreur. Le code ci-dessus a parfaitement fonctionné.
J'ai juste remplacé "IMAGE URL HERE" par l'URL de votre image - http://www.website.com/image.jpg
Je ne sais pas comment vous faites, mais je suppose que si vous voulez utiliser une url base64 au lieu d'une url réelle, je ne pense pas que ce soit une très bonne idée. Je pense que ce serait une meilleure idée d'avoir le fichier image sur votre serveur, et de simplement créer un lien vers lui via le SRC de l'image. Cela rend également le code source TRÈS volumineux et difficile à modifier si vous devez apporter des modifications à votre site Web.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
4 votes
Pourquoi voulez-vous faire ça ?
8 votes
Pour l'intégrer dans l'attribut src de la balise Img
6 votes
Il s'agit d'un vieux fil de discussion, mais par souci d'exhaustivité : Il est très utile de coder les images, en particulier les petites (moins de 1k), pour les utiliser en css. De cette façon, vous économisez une requête, qui prendrait plus de temps et pourrait même être plus grande, en raison de l'overhead.