Anführungszeichen in PHP umgehen: Eine umfassende Anleitung
Anführungszeichen spielen in PHP eine entscheidende Rolle beim Einschließen von Zeichenfolgen. Wenn Sie jedoch mit Zeichenfolgen arbeiten, die Anführungszeichen enthalten, ist es notwendig, diese Zeichen zu maskieren, um Analysefehler zu vermeiden.
Das Problem und seine Auswirkungen
Im angegebener Codeausschnitt:
$text1 = 'From time to "time" this submerged or latent theater in 'Hamlet'...';
Der Analysefehler tritt auf, weil das einfache Anführungszeichen nach „time“ als Ende der Zeichenfolge interpretiert wird. was zu einer unvollständigen Zeichenfolge führt. Dies liegt daran, dass PHP nicht zwischen einfachen und doppelten Anführungszeichen für Zeichenfolgen unterscheidet und daher davon ausgeht, dass das Anführungszeichen ohne Backslash-Escape-Sequenz das Schlusszeichen ist.
Lösung: Backslash-Escape-Sequenz
Um Anführungszeichen innerhalb einer Zeichenfolge zu maskieren, verwenden Sie einen Backslash () vor dem Anführungszeichen. Dadurch wird PHP darüber informiert, dass das Anführungszeichen als Teil der Zeichenfolge und nicht als Schlusszeichen behandelt werden soll.
$text1 = 'From time to \"time\" this submerged or latent theater in 'Hamlet'...';
Durch das Hinzufügen der Backslashes vor jedem Anführungszeichen wird die Zeichenfolge ohne Analysefehler korrekt interpretiert.
Alternative Syntax: Einfache Anführungszeichen
Eine andere Möglichkeit besteht darin, stattdessen einfache Anführungszeichen zu verwenden von doppelten Anführungszeichen für die Zeichenfolge. PHP erlaubt keine String-Interpolation innerhalb von Strings in einfachen Anführungszeichen, was die durch Anführungszeichen innerhalb des Strings verursachte Mehrdeutigkeit verhindert.
$text2 = 'From time to "time"';
Heredocs für lange mehrzeilige Strings
Wenn Sie mit langen mehrzeiligen Zeichenfolgen arbeiten, können Sie mithilfe von Heredocs Zeichenfolgen erstellen, die sich über mehrere Zeilen erstrecken, ohne sich Gedanken über das Entkommen von Anführungszeichen machen zu müssen. Heredocs werden von << Schlussfolgerung Anführungszeichen mit Escapezeichen versehen PHP ist für die Verarbeitung von Zeichenfolgen, die Anführungszeichen enthalten, unerlässlich. Durch die Verwendung einer Backslash-Escape-Sequenz oder einfacher Anführungszeichen wird sichergestellt, dass die Anführungszeichen als Teil der Zeichenfolge behandelt werden, wodurch Analysefehler verhindert und eine nahtlose Zeichenfolgenverarbeitung ermöglicht wird. Wenn Sie mit langen mehrzeiligen Zeichenfolgen arbeiten, bieten Heredocs eine praktische Lösung zum Einschließen des Textes, ohne dass Anführungszeichen als Escapezeichen erforderlich sind. Das obige ist der detaillierte Inhalt vonWie entferne ich Anführungszeichen in Strings in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!$heredoc = <<<term
This is a long line of text that include variables such as $someVar
and additionally some other variable $someOtherVar. It also supports having
'single quotes' and "double quotes" without terminating the string itself.
term;