Bonjour,
en php j'ai l'impression que deux fonctions font la meme chose (serialize et implode). quand choisir l'un ou l'autre
Hello,
Les 2 fonctions ne font pas du tout la même chose.
Implode
te permet de générer une chaîne de caractères à partir d'un tableau avec un séparateur.
Exemple, tu as un tableau de nom, et tu veux les afficher séparés par des virgules. Tu as juste à faire
$monTableau = ["Jean", "Jacques", "Michel", "Arnaud"];
echo implode($monTableau, ", ");
//Ce qui va donner : Jean, Jacques, Michel, Arnaud
Serialize quant à lui retourne un tableau en chaîne de caractère pour le stocker en base de données par exemple, ou le transmettre d'une page à une autre.
Si tu serialize $monTableau
de l'exemple précédent, tu obtiendras :
a:4:{i:0;s:4:"Jean";i:1;s:7:"Jacques";i:2;s:6:"Michel";i:3;s:6:"Arnaud";}
La serialization contient les infos du tableau.
a:4
veut dire array à 4 entrées
i:0
integer qui vaut 0 (donc la clé du tableau 0)
s:4
string de longueur 4 qui à pour valeur "Jean"
etc etc ...
Serialize n'a pas pour vocation à être affiché sur ton site / application. Il servira uniquement au fonctionnement interne à ton outil.
Implode lui, va probablement te servir beaucoup plus souvent !
J'espère avoir été clair dans mes explications !