Maison  >  Article  >  développement back-end  >  Pourquoi `fwrite` ne crée-t-il pas de nouvelle ligne lors de l'utilisation de `\n` en PHP ?

Pourquoi `fwrite` ne crée-t-il pas de nouvelle ligne lors de l'utilisation de `\n` en PHP ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-11 00:08:03597parcourir

Why does `fwrite` not create a new line when using `n` in PHP?

Écrire une nouvelle ligne dans un fichier en PHP (saut de ligne)

Ce problème survient lors de l'utilisation de fwrite avec 'n' pour écrire un nouveau ligne dans un fichier, et au lieu de créer une nouvelle ligne, il imprime 'n' sous forme de chaîne dans le fichier.

Pour résoudre ce problème, remplacez simplement 'n' avec "n". La séquence d'échappement n'est pas reconnue lors de l'utilisation de ' (guillemets simples). En effet, ' (guillemets simples) sont utilisés pour les chaînes sans échappement et 'n' est traité comme une chaîne littérale représentant les caractères n.

Par exemple, considérons ce code :

$file = fopen('ids.txt', 'w');
fwrite($file, $gem->getAttribute('id') . "\n");

Dans ce code, "n" est utilisé comme caractère de nouvelle ligne, garantissant qu'une nouvelle ligne est créée dans le fichier.

Concernant l'utilisation de rn (retour chariot et nouvelle ligne), il est généralement utilisé sur les systèmes Windows pour représenter une nouvelle ligne. Toutefois, si vous souhaitez écrire des fins de ligne de manière cohérente sur tous les systèmes d'exploitation, vous devez adopter une convention unique, telle que l'utilisation de « n » pour tous les systèmes d'exploitation. De plus, il est recommandé d'ouvrir votre fichier en mode binaire (par exemple, en utilisant « wb »), car cela garantit que les fins de ligne sont écrites correctement lors du transfert de fichiers entre des systèmes avec des conventions différentes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn