Avatar ·

Comment enregistrer le résultat de var_dump() dans une chaîne en PHP ?

Bonjour à tous ! Je suis débutant en PHP et j'ai rencontré un problème.

J'ai besoin d'obtenir le dump d'une variable (tableau ou objet) sous forme de chaîne, afin de l'écrire dans un fichier journal ou de l'envoyer par email pour le débogage. La fonction var_dump() affiche parfaitement la structure des données, mais elle affiche directement le résultat dans le navigateur ou la console. Moi, j'ai besoin de sauvegarder cette sortie dans une variable chaîne.

Voici un exemple de code avec lequel je travaille :

<?php
$data = [
    'name' => 'Иван',
    'age' => 30,
    'skills' => ['PHP', 'JavaScript', 'Python']
];

// var_dump affiche directement dans la sortie
var_dump($data);

// J'ai besoin de quelque chose comme :
// $logString = var_dump_to_string($data);
// file_put_contents('debug.log', $logString);
?>

J'ai essayé d'utiliser print_r(), mais il n'affiche pas les types de données (par exemple, on ne voit pas qu'une chaîne est une chaîne et qu'un nombre est un nombre). var_export() affiche du code PHP valide, mais ce n'est pas ce que je veux.