63 votes

Echapper aux guillemets en PHP

J'obtiens une erreur d'analyse, et je pense que c'est à cause des guillemets supérieurs à "time" . Comment puis-je le faire traiter comme une chaîne entière?

 <?php
    $text1 = 'From time to "time" this submerged or latent theater in 'Hamlet'
    becomes almost overt. It is close to the surface in Hamlet's pretense of madness,
    the "antic disposition" he puts on to protect himself and prevent his antagonists
    from plucking out the heart of his mystery. It is even closer to the surface when
    Hamlet enters his mother's room and holds up, side by side, the pictures of the
    two kings, Old Hamlet and Claudius, and proceeds to describe for her the true
    nature of the choice she has made, presenting truth by means of a show.
    Similarly, when he leaps into the open grave at Ophelia's funeral, ranting in
    high heroic terms, he is acting out for Laertes, and perhaps for himself as well,
    the folly of excessive, melodramatic expressions of grief.";

    $text2 = 'From time to "time"';

    similar_text($textl, $text2, $p);
    echo "Percent: $p%";

Le problème est que je ne peux pas ajouter manuellement \ avant chaque guillemet. C'est le texte réel que je dois comparer.

59voto

Matoeil Points 721

Utilisez la fonction d' ajout de cils :

  $str = "Is your name O'Reilly?";

 // Outputs: Is your name O\'Reilly?
   echo addslashes($str);

7voto

jarod Points 81

Utilisez htmlspecialchars() . Ensuite, les citations et les symboles inférieurs/supérieurs à ne cassent pas vos balises HTML ~

5voto

Enregistrez votre texte non pas dans un fichier PHP, mais dans un fichier texte ordinaire appelé, disons, "text.txt"

Ensuite, avec une simple commande $text1 = file_get_contents('text.txt'); obtenez votre texte sans aucun problème.

3voto

ManseUK Points 26965
$text1= "From time to \"time\"";

ou

 $text1= 'From time to "time"';

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X