Comment stocker et récupérer des tableaux avec PHP
Le stockage et la récupération de tableaux en PHP peuvent être une tâche courante à diverses fins. Bien qu'il n'y ait pas de fonctions dédiées comme store_array(), il existe des méthodes efficaces et simples pour accomplir cette tâche.
L'approche préférée consiste à utiliser la sérialisation JSON. Cette méthode convertit les tableaux dans un format lisible par l'homme, ce qui entraîne des tailles de fichiers plus petites et des temps de chargement/sauvegarde plus rapides.
Sérialisation JSON
Sérialisation JSON (JavaScript Object Notation) fournit deux fonctions clés :
Exemple de code :
Pour stocker un tableau dans un fichier :
$arr1 = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
file_put_contents("array.json", json_encode($arr1));
Pour récupérer le tableau à partir du fichier :
$arr2 = json_decode(file_get_contents('array.json'), true);
$arr1 === $arr2 # => true
Comparaison de vitesse
La sérialisation JSON surpasse les autres méthodes en termes de vitesse :
json_encode($arr1); // 0.000002 seconds
serialize($arr1); // 0.000003 seconds
Fonctions personnalisées
Vous pouvez écrire vos propres fonctions store_array() et restaurer_array() en utilisant l'approche de sérialisation JSON :
function store_array($arr, $file) {
file_put_contents($file, json_encode($arr));
}
function restore_array($file) {
return json_decode(file_get_contents($file), true);
}
Avec ces fonctions, vous pouvez facilement stocker et récupérer des tableaux avec un minimum d'effort. Gardez à l'esprit que la sérialisation JSON ne convient pas au stockage d'objets ou de ressources sérialisés, car ceux-ci ne peuvent pas être encodés au format JSON.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3