php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 09.08.2006, 20:45  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Außer dass mir das Konzept, numerische Werte als Zeichenketten zu behandeln recht gruselig erscheint hat es wohl keine Auswirkungen.

Eigentlich sollten Strings immer gleich behandelt werden. Wenn man aber mit viel Phantasie den Inhalt der Zeichenkette als Zahl interpretieren könnte, dann werden die anderes behandelt.

So ist es beispielsweise möglich, statt strmp() zu verwenden, auch einfach 'a'<'b' zu schreiben. Ebenso ist 'aaa'<'ab' möglich.
Beides ist offensichtlich wahr.
Ersetze man die beliebigen Zeichen (a und b) duch andere beliebige Zeichen (0 und 1), so klappt es nicht mehr:
' 100'<' 11' wird nicht als wahr erkannt. Ein Zeichenkettenvergleich würde aber wahr liefern. Sogar wenn man ein Leerzeichen davor macht, wird es als Zahl interpretiert.

Erst eine Alternative Form für Stringvergleiche einführen und dann ist das Ergebnis vom Inhalt abhängig. Entweder der Vergleich funktioniert für alle Strings gleich oder man sollte das Ding komplett verbieten.

Irgendwann treiben mich diese automatischen Typkonvertierungen in den Wahnsinn.

Wenigstens einen Unterschied hab ich grad doch noch gefunden:
PHP-Code:
<?php
$a 
'1234';
echo 
"a[2]: $a[2]
\n"
;
$b 1234;
echo 
"b[2]: $b[2]
\n"
;
?>
Als Ausgabe kommt im ersten Fall wie erwartet 3, während im zweiten Fall keine Ausgabe erfolgt.
Warum allerdings keine Notice kommt, obwohl$b kein Array ist, bleibt mir momentan ein Rätsel. error_reporting(E_ALL) steht natürlich davor.
Ich bin immer weider 'begeistert', welche 'Features' da in PHP enthalten sind.
Der_Gerhard ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Brauche hilfe mik08 PHP Tipps 2008 10 27.07.2008 16:17
Datenbanktabelle erstellen - brauche Hilfe Raccoon PHP Tipps 2008 1 14.06.2008 11:03
Ich brauche eure Hilfe beim rechnen... GELight PHP Tipps 2006 6 07.04.2006 14:20
Ey, ich brauche Hilfe 77King PHP Tipps 2006 10 30.03.2006 08:22
Ich brauche eure Hilfe PHP Tipps 2006 22 19.02.2006 19:57
PHP <--> MySQL | Brauche Hilfe ahnungsloser Datenbanken 18 16.02.2006 21:49
Brauche Hilfe - Dateien direkt online ändern (Office) Off-Topic Diskussionen 5 01.11.2005 20:41
brauche sehr schnell und dringend hilfe Beitragsarchiv 13 24.10.2005 13:11
HILFE ! Brauche ganz dringend hilfe! PHP Tipps 2005-2 2 10.10.2005 23:08
brauche hilfe!!! marcelglaeser HTML, Usability und Barrierefreiheit 0 03.10.2005 20:01
Hilfe, Ich brauche hilfe! Kevin PHP Tipps 2005-2 2 27.09.2005 19:31
BRAUCHE DRINGENDE HILFE !!! PHP Tipps 2005-2 2 06.08.2005 19:45
Brauche Hilfe bei preg_match() PHP Tipps 2005-2 2 23.07.2005 22:44
[Erledigt] Brauche dringend Hilfe PHP Tipps 2005 19 01.02.2005 20:21
Brauche Hilfe PHP Tipps 2005 5 11.01.2005 15:30


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:58 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.