• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

RegEx-Problem

Status
Für weitere Antworten geschlossen.

m0sT

Neues Mitglied
Code:
String wird als Zeile aus ner Datei gelesen:
$lines = file("./config.php");

String: 
$varibale = "Zuweisung.....";

$new = preg_replace("/^\$(.*)=/i","$1",$lines[$x]);

Warum kommt da nicht:

'variable' raus?
 
Ich denke er hat es so
Text-Datei
Code:
variable1 = "value1"
variable2 = "value2"
und möchte das nun in sein Script einbauen

Für diesen Zweck finde ich das sehr umständlich, nehme lieber vorgesehene Funktionen für sowas.

PHP:
$vars = parse_ini_file("file.txt");
dann hast du alle werte aus der textdatei in dem array vars
Code:
$vars["variable1"] = "value1"
...
 
@Frank:
Wenn er sagt das es so aussieht:
PHP:
$varibale = "Zuweisung.....";

Warum sollte es dann nicht so sein?
 
config.php:
Code:
$var1 = "lala";
$var2 = "alalalala";

andere Datei:
Code:
$vars = file("config.php");

for ($x = 0; $x < count($vars); $x++) {

$new = preg_replace("/^\$(.*)=/i","$1",$lines[$x]);

}

Wenn $vars[$x] jetzt z.B.

$var1 = "lalal";

war soll rauskommen:

Code:
var1
 
Versuche mal den regulären ausdruck in single quotes anstatt in double quotes zu setzten.

Warum includest du die config datei nicht einfach? Dann musst du sie nicht erst aufwendig parsen.
 
weil ich die variablen innerhalb einer function brauche, die soll ein array mit den variablen zurückgeben

edit:

das mit den singlequotes ging:

PHP:
 $new = preg_replace('/\$(.*)=(.*)/i','$1',$lines[$x]);
 $new_inhalt = preg_replace('/(.*)"(.*)";/i','$2',$lines[$x]);
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
Zurück
Oben