Correctement échapper à une double citation en CSV
J'ai une ligne comme ceci dans mon CSV:
"Samsung U600 24"","10000003409","1","10000003427"
Devis à côté de 24
est utilisé pour exprimer pouces, tandis que la citation juste à côté de cette citation ferme le champ. Je suis en train de lire la ligne avec fgetcsv
mais l'analyseur fait une erreur et lit la valeur:
Samsung U600 24",10000003409"
J'ai essayé de mettre une barre oblique inverse avant l'pouces citation, mais ensuite, j'ai juste une barre oblique inverse dans le nom:
Samsung U600 24\"
Est-il un moyen de sortir correctement ce dans le CSV, de sorte que la valeur serait Samsung U600 24"
, ou dois-je regex dans le processeur?
- Il suffit de double de votre devis. C'est tout
Vous devez vous connecter pour publier un commentaire.
Utiliser 2 des citations:
Pas seulement des guillemets, vous serez dans le besoin pour l'apostrophe (
'
), guillemet double ("
), barre oblique inverse (\
) et NUL (l'octet NUL).Utilisation
fputcsv()
à écrire, etfgetcsv()
à lire, qui prendra soin de tous.fputcsv()
montre comment vous pouvez utiliserfputcsv()
lorsque vous souhaitez afficher dans le format csv pour le navigateur au lieu d'un fichier.Si une valeur contient une virgule, un caractère de saut de ligne ou un guillemet double, alors la chaîne de caractères doit être entouré de guillemets doubles. E. g: "Newline char dans ce domaine \n".
Vous pouvez utiliser en dessous de l'outil en ligne pour échapper à "" et , les opérateurs.
https://www.freeformatter.com/csv-escape.html#ad-output