Skip to content

Fallstrick in PHP (z.B. bei crypt() )

Reminder! In PHP ist ein ist nicht gleich Sowas kann durchaus relevant werden ;-)

Nachtrag 15:12 Uhr
Man denke sich $123456 ersetzt durch $abcdef :-)

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

TM

Öhm, PHP ist zwar Schrott aber rein-numerische Variablen sind nicht möglich. Dementsprechend sind die beiden Strings identisch wie die PHP-Shell auch bestätigt:

php > echo '$1$23456'."\n";
$1$23456
php > echo "$1$23456"."\n";
$1$23456

metal-heli

Ich denk mal, Manuel hat auf die schnelle die echten Variablennamen durch Zahlen ersetzt und nicht dran gedacht ;-)

Manuel Schmitt (manitu)

Exakt :-)

Hans Wurst

Was gibts denn besseres mit ähnlicher Verbreitung auf Webservern?

Peter

Mit aktiven Notices sieht man solche Probleme sofort ;-)

Pascal

Deshalb nutze ich in PHP ausschließlich Single Quotes (und baue mir zwangsweise Strings selbst zusammen). Ist natürlich dann doof, wenn man sich seinen C#-Projekte widmet, wo Single Quotes für was anderes stehen. ;)

Dirk

… und darum vermeide ich doppelte Anführungszeichen konsequent!

anon

Doppelte Anführungszeichen in PHP zu verwenden ist auch eher ein Anfängerfehler/-verhalten. ;-)

Ich vermute, dass es auch nur aus Kompatiblitätszwecken noch weiterhin nutzbar ist.

Andreas

Wieso ist das Verwenden dieser denn ein Anfängerfehler?

Oder sind wir hier schon wieder bei einem Religiösen Thema gelandet?

anon

Mit der Zeit schleichen sich immer mal Dollar Zeichen ein, die nicht decodiert sind und Fehlermeldungen werfen. Umso öfter dies passiert, desto eher sollte man - aus rationaler Sicht* betrachtet - dazu übergehen einfache Anführungszeichen zu verwenden.

*http://de.wikipedia.org/wiki/Homo_oeconomicus

Irgend eine Glaubensfrage wollte ich damit nicht auslösen, dazu habe ich mit jeder Programmiersprache zu viele schlechte Erfahrungen gemacht. ;-)

Debe

...ausser wenn man viele Textketten ausgeben muss, die einfache Anführungszeichen enthalten: Dann ist das Verwenden der doppelten A. rund um betroffene Strings sinnvoll und logisch. Ebenso bei Auftreten von \n, \r, \t, wenn man diese als Steuerzeichen und nicht exakt so haben will.

m1

Oh man... Single und Double Quotes haben beide ihre Daseinsberechtigung in PHP. Jeder, der was anderes schreibt, hat sich wohl noch nicht genau mit dem Thema beschäftigt. PHP jetzt prinzipiell als Schrott hinzustellen, ist genau der gleiche Unsinn.

Ich bin zwar kein PHP-Lover, muss aber arbeitsbedingt häufig damit arbeiten, wie mit anderen Programmiersprachen auch. Es ist keinesfalls das Maß aller Dinge, aber auch nicht das Letzte vom Letzten...

Hier mal ein Link zu den Quotes für all diejenigen unter euch, die sich noch weiterbilden wollen und ihre festgefahrene Meinung nicht als absolut ansehen:
http://davedash.com/2007/03/03/php-double-versus-single-quotes/

Kommentar schreiben

Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.
Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.

Um maschinelle und automatische Übertragung von Spamkommentaren zu verhindern, bitte die Zeichenfolge im dargestellten Bild in der Eingabemaske eintragen. Nur wenn die Zeichenfolge richtig eingegeben wurde, kann der Kommentar angenommen werden. Bitte beachten Sie, dass Ihr Browser Cookies unterstützen muss, um dieses Verfahren anzuwenden.
CAPTCHA

BBCode-Formatierung erlaubt
Formular-Optionen