martinli: ereg_replace

Hallo,

ich verstehe es einfach nicht. Wenn ich folgendes original aus selfphp.de rauskopiere und bei mir einfüge, dann wird einfach nicht der string ersetzet:

$str = 'ICH BIN GROSS';
echo $str;
echo '<br>';
$str = ereg_replace('bin', 'WAR', $str);
echo $str;

Ausgabe:

ICH BIN GROSS
ICH BIN GROSS

Viele Grüße
Martin

  1. Hi !

    ...

    $str = 'ICH BIN GROSS';

    ...

    $str = ereg_replace('bin', 'WAR', $str);

    ^^^^^
    schreib hier:          'BIN'

    Gruß

    Hans

    1. Ja, das war wohl in diesem fall wirklich der fehler,
      aber jetzt kommt gleich die nächste frage:
      ich will überprüfen ob die Variabele $link etwas enthält. Wenn dem so ist, dann soll $link=NULL;

      $link="..";
      if(strpos($link,'..')!=FALSE)
        {
        echo"jaaaaa";
        $link=FALSE;
        }

      so funktioniert es leider nicht, was mache ich da falsch?
      Vielen dank schon mal!
      Martin

      1. Hallo Martin,

        [...] ich will überprüfen ob die Variabele $link etwas enthält. Wenn dem so ist, dann soll $link=NULL;

        hast Du schonmal was von empty() gehört?

        Grüße aus Karlsruhe,
        Götz

        --
        Losung für Donnerstag, 11. Mai 2006
        Wenn du, Herr, Sünden anrechnen willst - Herr, wer wird bestehen? (Psalm 130,3)
        Wir haben gesehen und bezeugen, dass der Vater den Sohn gesandt hat als Heiland der Welt. (1. Johannes 4,14)
        (Losungslink)
      2. gudn tach!

        $link="..";
        if(strpos($link,'..')!=FALSE){
          echo"jaaaaa";
          $link=FALSE;
        }

        0==false
        aber
        0!==false

        siehe auch das warning im manual.

        prost
        seth

  2. Hallo Martin,

    $str = 'ICH BIN GROSS';
    echo $str;
    echo '<br>';
    $str = ereg_replace('bin', 'WAR', $str);
    echo $str;

    Du solltest Dir mal ereg_replace() und eregi_replace() durchlesen.
    Denn in Deinem Text steht "BIN", Du ersetzt jedoch "bin" - und das wird natürlich nicht gefunden.

    Davon abgesehen solltest Du bei dieser Ersetzung sowieso besser [link=http://de2.php.net/manual/en/function.str-replace.php@title=str_replace()] verwenden, und wenn du unbedingt reguläre Ausdrücke brauchst ist, was inzwischen sogar im Manual steht, preg_replace schneller als ereg_replace().

    Grüße aus Karlsruhe,
    Götz

    --
    Losung für Donnerstag, 11. Mai 2006
    Wenn du, Herr, Sünden anrechnen willst - Herr, wer wird bestehen? (Psalm 130,3)
    Wir haben gesehen und bezeugen, dass der Vater den Sohn gesandt hat als Heiland der Welt. (1. Johannes 4,14)
    (Losungslink)