Maison > interface Web > js tutoriel > Comment enregistrer des fichiers PNG à partir d'URI de données Base64 à l'aide de PHP ?

Comment enregistrer des fichiers PNG à partir d'URI de données Base64 à l'aide de PHP ?

Patricia Arquette
Libérer: 2024-12-06 12:12:18
original
1024 Les gens l'ont consulté

How to Save PNG Files from Base64 Data URIs Using PHP?

Enregistrement de fichiers PNG à partir d'URI de données Base64 côté serveur avec PHP

Lors de la conversion de dessins sur toile en images PNG à l'aide d'outils tels que "Canvas2Image de Nihilogic, " il est souvent nécessaire de stocker ces images sur un serveur utilisant PHP. Ceci peut être réalisé en décodant les chaînes base64 générées par l'outil et en créant de véritables fichiers PNG.

Pour ce faire, extrayez les données base64 en divisant la chaîne URI des données entre le point-virgule (';') et la virgule ( ','). Décodez les données à l'aide de la fonction base64_decode et transmettez-les à la fonction file_put_contents pour enregistrer le fichier à l'emplacement souhaité.

Par exemple :

$data = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABE...';

list($type, $data) = explode(';', $data);
list(, $data) = explode(',', $data);
$data = base64_decode($data);

file_put_contents('/tmp/image.png', $data);
Copier après la connexion

Pour simplifier le processus, utilisez un one- liner :

$data = base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $data));
Copier après la connexion

Pour la gestion des erreurs et la validation du type d'image, vous pouvez utiliser le suivant :

if (preg_match('/^data:image\/(\w+);base64,/', $data, $type)) {
    // ... validation and processing
}
Copier après la connexion

En suivant ces étapes, vous pouvez enregistrer efficacement des images PNG à partir d'URI de données base64 sur votre serveur à l'aide du code PHP côté serveur.

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal