groe
11.07.2006, 20:29:53
Hi,
Habe gesucht aber leider kaum eine passende Lösung gefunden. Hoffe ihr könnt mir helfen.
Mein Ziel:
In der Variable $str1 ist "Blablabla [29] blablabla" gespeichert, wobei die 29 in den eckigen Klammern auch ein anderer Wert sein kann. Nun soll automatisch "[29]" durch eine Information aus der MySQL-Datenbank ersetzt werden. Diese Information hat in MySQL die ID 29.
Mein Lösungsansatz:
$str1 = ereg_replace("\[([0-9]+)\]", mysql_result(mysql_query("SELECT info FROM infos WHERE id = '\\1'"),0, "info"), $str1);
Mein Problem:
\\1, die Rückwärtsreferenz, wird im folgenden Sourcecode zwar durch die Zahl ersetzt,
$str1 = ereg_replace("\[([0-9]+)\]", "\\1", $str1); // FUNKTIONIERT
wenn ich allerdings die Rückwärtsreferenz als Parameter an eine Funktion übergeben will, wird diese nicht durch den Zahlenwert zwischen den eckigen Klammern ersetzt.
$str1 = ereg_replace("\[([0-9]+)\]", strlen("\\1"), $str1); // FUNKTIONIERT NICHT
Ich hoffe ich habe mich verständlich ausgdrückt und irgendwer kann mir helfen. Bin am verzweifeln -__-
LG groe
Habe gesucht aber leider kaum eine passende Lösung gefunden. Hoffe ihr könnt mir helfen.
Mein Ziel:
In der Variable $str1 ist "Blablabla [29] blablabla" gespeichert, wobei die 29 in den eckigen Klammern auch ein anderer Wert sein kann. Nun soll automatisch "[29]" durch eine Information aus der MySQL-Datenbank ersetzt werden. Diese Information hat in MySQL die ID 29.
Mein Lösungsansatz:
$str1 = ereg_replace("\[([0-9]+)\]", mysql_result(mysql_query("SELECT info FROM infos WHERE id = '\\1'"),0, "info"), $str1);
Mein Problem:
\\1, die Rückwärtsreferenz, wird im folgenden Sourcecode zwar durch die Zahl ersetzt,
$str1 = ereg_replace("\[([0-9]+)\]", "\\1", $str1); // FUNKTIONIERT
wenn ich allerdings die Rückwärtsreferenz als Parameter an eine Funktion übergeben will, wird diese nicht durch den Zahlenwert zwischen den eckigen Klammern ersetzt.
$str1 = ereg_replace("\[([0-9]+)\]", strlen("\\1"), $str1); // FUNKTIONIERT NICHT
Ich hoffe ich habe mich verständlich ausgdrückt und irgendwer kann mir helfen. Bin am verzweifeln -__-
LG groe