Solution ex7

Voici comment écrire le code de la fonction getJsonArray() pour qu’elle lise le fichier dont le chemin d’accès est contenu dans $filepath et génère un tableau où chaque élément correspond à une ligne du fichier, encode ce tableau au format JSON et renvoie sa valeur dans la variable $jsontext, en complétant le code donné :

$path = "myfiles/wrapped.txt";

function getJsonArray($filepath) {
  $jsontext = "";

  // Ouvre le fichier en lecture
  $file = fopen($filepath, "r");

  // Crée un tableau vide
  $lines = array();

  // Parcours le fichier ligne par ligne
  while (($line = fgets($file)) !== false) {
    // Ajoute chaque ligne au tableau $lines
    $lines[] = $line;
  }

  // Ferme le fichier
  fclose($file);

  // Encode le tableau $lines au format JSON
  $jsontext = json_encode($lines);

  return $jsontext;
}

$jsontext = getJsonArray($path);
print "<pre>\n";
print_r(json_decode($jsontext));
print "</pre>\n";

La fonction fopen() ouvre le fichier en mode "r" (lecture seule). La boucle while parcourt le fichier ligne par ligne à l’aide de la fonction fgets() et ajoute chaque ligne au tableau $lines. Enfin, la fonction fclose() ferme le fichier.

La fonction json_encode() encode le tableau $lines au format JSON et renvoie le résultat sous forme de chaîne de caractères.

La fonction json_decode() décode la chaîne de caractères JSON et renvoie un tableau PHP. Le préfixe print_r() et la balise <pre> sont utilisés pour afficher le tableau de manière lisible.

Soyez le premier à commenter

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.




Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.