Nie chce korzystac zpreg_match_all bo to ma zwrucic albo true albo false jesli zwroci true to robic cos tam ... to /\{\$([a-zA-Z0-9_]+)\}/ cos nie dziala.
Caly kod wyglada tak: index.php
<?php
$file_name = \"index.html\"; /* Nazwa pliku szablonu. */
$title = \"cos tam\"; /* Zmienna do parsowania. */
$name = \"cos tam innego\"; /* Zmienna do parsowania. */
$file_content = \"<?php /* File '\" .$file_name. \".php' created \" .date ('d.m.Y - H:i:s'). \" by cos tam mojego. */ ?>nn\"; /* Ten tekst dodaje na samej górze. */
$file_open = fopen ($file_name, \"r\"); /* Wiadome */
$file_content .= fread ($file_open, 99999);
fclose ($file_open);
if (preg_match (\"/{$([a-zA-Z0-9]+)}/\", $file_content)) { /* Jeśli znajdzie {$ciag_znakow} to wykona preg_replace */
$file_content = preg_replace ('/{$([a-zA-Z0-9]+)}/', '
<?php echo $$
1; ?>', $file_content);
} else {
echo \"Nie ma\";
echo \"<br><br>\";
}
$file_open = fopen ($file_name. \".php\", \"w\");
fputs ($file_open, $file_content);
fclose ($file_open);
include ($file_name. \".php\"); /* Otwiera sparsowany plik */
?>
a index.html
<font face="verdana" size="1">Nazwa systemu:
<b>{$name}
</b>.
</font>
I teraz jesli znajdzie tylko {$zmienna} to wykonuje preg_replace jesli np {$zmienna cos} to wykonuje inne preg_replace ... Ten kod narazie bylejak pisany. Jesli macie jakies propozycje co do zmiany parsowania to prosze o sugestie.
Pozdrawiam.