Mailinglisten-Archive |
Hallo Norbert,
Norbert Pfeiffer wrote:
[Beispiele]
Interessant, scheint überall gleich zu "funktionieren".
> Wieso ist eigentlich '' == "\0" ... <gruebel>
>
> Wenn man in C oder VB in einen String eine \0 einfuegt,
> kann man sich wenigstens darauf verlassen,
> dass er genau dort zu Ende ist.
Na gut, dass muss ja nicht unbedingt. Aber klar sollte schon sein, wie
das gedacht ist. Ich fürchte, hier ist einiges noch nicht zuende
gedacht. Noch ein Beispiel. Dafür greife ich mal Deins jetzt auf:
<?php
//Beispiel 1
$str = 'abcdefghi';
$vorher=$str;
$str[1]='';
$str{3}='';
$str[5]='';
$str{7}='';
$nachher=$str;
$neu='acegi';
echo $nachher . '|' . $neu;
if ($nachher == $neu) echo "Die Strings sind gleich";
else echo " Die Strings sind nicht gleich";
?>
Ergebnis: ungleich (!)
<?php
//Beispiel 2
$str1= 'a' . '' . 'b';
$str2= 'ab';
echo $str1 . '|' . $str2;
if ($str1 == $str2) echo "Die Strings sind gleich";
else echo " Die Strings sind nicht gleich";
?>
Egebnis: gleich
Wenn ich das richtig sehe, scheint der Schreibzugriff auf die
Einzelzeichen innerhalb eines "Strings" nicht zuende gedacht zu sein, ob
nun mit eckigen oder geschweiften Klammern.
Es kann doch nicht sein, dass zwei gleiche Strings mal gleich sind und
mal ungleich. ;-(
Viele Grüße
Peter
php::bar PHP Wiki - Listenarchive