PHP Fehler!
-
Hi,
ich hab eine variable in der ich einen namen abgespeichert habe, den möchte ich jetzt gerne in 'eregi_replace' benutzen, doch das will nicht, ich bekomme einen leeren string
$path_images = "images/"; // HIER WIRD BENUTZT $str = eregi_replace(";)", "<img alt=\";)\" src=\"".$path_images."smilies/wink.gif\">", $str);
Was muss ich tun damit das funktioniert?
-
- verwendet man _nie_ ereg, sondern immer preg
- du brauchst ein str_replace, nichts anderes
-
Danke,
ich hätte nur noch 1. frage:
$path_images = "images/"; $path_smilies = $path_images."smilies/"; function changetext($str) { $str = str_replace(";)", "<img alt=\";)\" src=\"".$paths['smilies']."wink.gif\">", $str); $str = nl2br($str); return $str; }
Wenn ich die beiden variablen außerhalb setze passiert nichts, mach ich jedoch folgendes:
function changetext($str) { $path_images = "images/"; $path_smilies = $path_images."smilies/"; $str = str_replace(";)", "<img alt=\";)\" src=\"".$paths['smilies']."wink.gif\">", $str); $str = nl2br($str); return $str; }
klappt es einwandfrei? Wieso? Ich möchte die beiden variablen jedoch global haben
-
achja, ersetzt das
.$paths['smilies'].
durch
.$path_smilies.
das $paths['smilies'] war nur ein array-test der das selbe ergebnies lieferte. Außerhalb klappte es nicht, innerhalb jedoch wunderbar
-
globale variablen sind in einer Funktion nicht sichtbar.
entweder du sprichst die Variablen direkt an:
$GLOBALS['path_smilies']
oder du machst sie in der Funktion bekannt:
global $path_smilies;