Was ist der Unterschied zwischen einfachen und doppelten Anführungszeichen in PHP?
Ich bin kein Experte in PHP-Programmierung, aber ich bin ein wenig verwirrt, warum ich einige code, der in PHP mit string platziert in einfache Anführungszeichen und manchmal in Anführungszeichen gesetzt werden.
Kenne ich nur in .NET, oder C-Sprache, wenn es im single-quote, das heißt, es ist ein Zeichen, kein string.
InformationsquelleAutor der Frage rob waminal | 2010-08-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
PHP strings angegeben werden können, nicht nur in zwei Möglichkeiten, aber in vier Möglichkeiten.
\'
und einen umgekehrten Schrägstrich können Sie entkommen mit einem weiteren umgekehrten Schrägstrich\\
(Also ja, auch single-quoted strings werden geparst).$type
und was Sieecho "The $types are"
die sich auch für die variable$types
. Um dies zu umgehen, verwendenecho "The {$type}s are"
Sie können die linke Klammer vor oder nach dem dollar-Zeichen. Werfen Sie einen Blick auf string Parsen zu sehen, wie array-Variablen und so.<<<
. Nach diesem operator kann mit einer id versehen ist, dann ein Zeilenumbruch. Der string selbst folgt, und dann die gleiche id wieder zu schließen, das Angebot. Sie nicht brauchen, um zu entkommen Zitate in dieser syntax.<<<
Reihenfolge für heredocs, sondern der Bezeichner, der folgt in einfache Anführungszeichen eingeschlossen ist, z.B.<<<'EOT'
. Keine Analyse erfolgt in nowdoc.Geschwindigkeit:
Ich würde nicht zu viel Gewicht auf einzelne Zitate schneller als doppelte Anführungszeichen. Wahrscheinlich sind Sie schneller in bestimmten Situationen. Hier ist ein Artikel erklären einer Art und Weise, in der einzelne und doppelte Anführungszeichen sind im wesentlichen gleich schnell sind seit PHP 4.3 (
Useless Optimizations
nach unten, AbschnittC
). Auch diese benchmarks-Seite hat eine single vs double quote-Vergleich. Die meisten Vergleiche sind die gleichen. Es gibt einen Vergleich, wo die Anführungszeichen sind langsamer als einfache Anführungszeichen.InformationsquelleAutor der Antwort Peter Ajtai
Dinge bewertet, in Anführungszeichen, nicht aber im einzelnen:
InformationsquelleAutor der Antwort Dani
Single quoted
Der einfachste Weg, um eine Zeichenfolge anzugeben ist, müssen Sie ihn in einfache Anführungszeichen. Das einfache Anführungszeichen ist im Allgemeinen schneller, und alles, was zitiert im inneren so behandelt, als einfacher string.
Beispiel:
Double quoted
Verwenden Sie doppelte Anführungszeichen in PHP zu vermeiden, verwenden Sie die Zeit, um eigenen code (Hinweis: Verwenden Sie geschweifte Klammern
{}
zu Variablen enthalten, die, wenn Sie nicht wollen, zu verwenden Verkettung (.
) - operator) in der Zeichenkette.Beispiel:
Gibt es einen performance-Vorteil single-quote vs doppelten Anführungszeichen in PHP?
Ja. Es ist etwas schneller, einfache Anführungszeichen zu benutzen.
PHP nicht verwenden Sie eine zusätzliche Verarbeitung zu interpretieren, was im inneren des einzelnen Angebots. wenn Sie doppelte Anführungszeichen verwenden, PHP zu Parsen, um zu prüfen, ob es irgendwelche Variablen gibt.
InformationsquelleAutor der Antwort Janak Kanani
Einer single-quoted Zeichenkette nicht haben Variablen, die innerhalb es interpretiert. Ein double-quoted string.
Auch Strings mit doppelten Anführungszeichen können Apostrophe enthalten. ohne umgekehrte Schrägstriche, während ein single-quoted string enthalten kann, die nicht korrekt codierten Anführungszeichen.
Single-quoted strings sind schneller zur Laufzeit, weil Sie nicht brauchen, um analysiert zu werden.
InformationsquelleAutor der Antwort Borealid
In PHP, die beide
'my name'
und"my name"
sind string. Lesen Sie mehr über es auf der PHP-manual.Sache, die Sie kennen sollten, sind
In PHP benutzt man einfache Anführungszeichen definieren eine Konstante Zeichenfolge, wie
'a'
'my name'
'abc xyz'
während der Verwendung von doppelten Anführungszeichen zu definieren, die eine Zeichenfolge enthalten-Bezeichner wie"a $b $c $d"
.Und die andere Sache ist,
ist schneller als
aber
ist langsamer als
Dies gilt auch für andere verwendete Schnur.
InformationsquelleAutor der Antwort Bang Dao
Beispiel von Einzel -, Doppel -, heredoc und nowdoc Zitate
InformationsquelleAutor der Antwort Rabindra Nath
Beide Arten von eingeschlossenen Zeichen, Zeichenketten sind. Eine Art von Zitat ist bequem verwendet zu umschließen, die andere Art von quote.
"'"
und'"'
. Der größte Unterschied zwischen den Arten von Anführungszeichen ist, dass die eingeschlossenen Bezeichner, Referenzen werden ersetzt innerhalb von doppelten Anführungszeichen, nicht jedoch in einfachen Anführungszeichen.InformationsquelleAutor der Antwort wallyk
In PHP, Apostroph text wird als string-Wert und Doppel-Zitat der text wird zum Parsen der Variablen durch den Austausch und die Verarbeitung Ihren Wert.
Hier doppelte Anführungszeichen analysieren den Wert und das einfache Anführungszeichen als string-Wert (ohne Analyse variable "$test".)
InformationsquelleAutor der Antwort Maulik Bhojani
Vielleicht bin ich ein wenig spät und ein wenig off-topic, aber hier ist es trotzdem...
Müssen Sie nicht zu wählen, weil dein string den Inhalt zwischen:
alert("It's \"game\" time.");
oderalert('It\'s "game" time.');
Statt, Sie können die Art, wie diese, und verwenden Sie dann entweder doppelte oder einfache Anführungszeichen, weil es nicht Angelegenheit:
alert("It’s “game” time.");
undalert('It’s “game” time.');
InformationsquelleAutor der Antwort Takit Isy
InformationsquelleAutor der Antwort Mahadeva Prasad
Eine Sache:
Es ist sehr wichtig zu beachten, dass die Zeile mit dem schließenden Bezeichner der Heredoc - muss enthalten keine anderen Zeichen, mit Ausnahme einer Semikolon (;). Das bedeutet vor allem, dass der Bezeichner nicht eingerücktund es kann nicht jeder Räume oder tabs vor oder nach dem Semikolon.
Beispiel:
InformationsquelleAutor der Antwort srmilon