BASE64_ENCODE |
Base64 : Encode |
---|---|
PHP 4.0+ |
Syntaxe
function base64_encode($data); |
Paramètres
Nom | Description |
---|---|
$data | Ce paramètre permet d'indiquer les données à encoder. |
Retour
Valeur | Description |
---|---|
chaine de caractères | Ces valeurs permettent d'indiquer le contenu encodé. |
Description
Cette fonction permet d'effectuer l'encodage d'une chaîne de caractères sous le format base64.
Remarques
- On peut utiliser la fonction base64_encode pour passer le code d'image directement dans le code source HTML dans une balise IMG de la manière suivante :
- <?php
- $imagebinaire = "...";
- $ext = "png";
- echo '<img alt="" src="data:image/'.$ext.';base64,'.base64_encode($imagebinaire).'">';
- ?>
- Encodage en Base64 : La fonction base64_encode permet de convertir une chaîne binaire ou de texte en une représentation textuelle encodée en Base64. Ce format est souvent utilisé pour transmettre des données binaires (images, fichiers,...) sur des canaux qui n'acceptent que des caractères ASCII imprimables.
- Caractères générés : Le résultat de base64_encode utilise un ensemble limité de 64 caractères (A à Z, a à z, 0 à 9, +, /) et éventuellement le caractère de remplissage =. Cela garantit une compatibilité avec des systèmes ou protocoles ne supportant pas les caractères spéciaux ou non affichables.
- Taille augmentée des données : L'encodage en Base64 augmente la taille des données encodées. Une chaîne encodée sera environ 33 % plus grande que la chaîne de caractèrse originale, ce qui peut être un facteur à prendre en compte lors de l'entreposage ou du transfert de données.
- Utilisation dans les URL : Bien que le Base64 soit courant pour encoder des données, il n'est pas toujours sûr pour les URL, car les caractères comme + et / ont une signification spéciale dans les URL. Dans de tels cas, il est préférable d'utiliser une variante comme Base64URL ou de remplacer ces caractères par des équivalents sûrs.
- Encodage de fichiers : La fonction est couramment utilisée pour encoder des fichiers binaires (comme des images ou des PDF) afin de les intégrer dans des flux de texte, comme dans un JSON ou un HTML (par exemple, avec des URI de données).
- Performances et limitations : Bien que base64_encode soit rapide, il peut consommer une quantité notable de mémoire si utilisé sur des chaînes de caractères ou fichiers très volumineux. Il est conseillé de traiter de grandes données en morceaux pour éviter de surcharger la mémoire.
- Interopérabilité entre systèmes : L'encodage Base64 est standardisé (RFC 4648), ce qui garantit que les chaînes de caractères encodées par base64_encode en PHP peuvent être décodées correctement dans d'autres langages ou systèmes compatibles.
- Applications de sécurité : Même si base64_encode est parfois utilisé pour cacher des données, il ne fournit aucune sécurité. Les données encodées en Base64 peuvent facilement être décodées et ne doivent jamais être considérées comme un moyen de chiffrer ou de sécuriser des informations sensibles.
Voir également
Technologie - Informatique - base64
Références
PHP 4 - Guide du développeur, Edition First Interactive, Blake Schwendiman, 2002, ISBN: 2-84427-283-5, page 371
Dernière mise à jour : Mercredi, le 25 mars 2015