Változók filba írása php segítségével.
Sziasztok megint van egy kis problémám egy telepíthető weblapot akarok létrehozni és amikor a hozzá férési adatokat fileba akarom íratni akkor nem az történik amit szertnék. Kérlek segítsetek itt a file írásának utasítása ami egy php fileban található!ennek ez lesz az eredménye:én azt szeretném hogy így nézzen ki:
Válaszaitokat előre is köszönöm ha kell még valami ahoz hogy segíteni tudjatok akkor szóljatok. És még egyszer köszi mindent. :D
■ - touch (dirname(__FILE__) . "settings.php");
- $iras=('$install=1;'."\n".'$title='$title';'."\n".'$head='$head';'."\n".'$almenu=1;'."\n".
- '$mysql_server='$hos't;'."\n".'$mysql_user='$felh';'."\n".'$mysql_pass='$pass';'."\n".
- '$mysql_db='$db';'."\n".'$adminpass='$pass_secret';'."\n".'$admin='$admin';'."\n".
- '$version='$newversion';'."\n".'$mail='$mail';'."\n");
- $fp=@fopen(dirname(__FILE__) . 'settings.php', 'w');
- fwrite ($fp, "<?php\n" . $iras . "?" . ">");
- fclose ($fp);
- echo'kész';
- <?php
- $install=1;
- $title=$title;
- $head=$head;
- $almenu=1;
- $mysql_server=$host;
- $mysql_user=$felh;
- $mysql_pass=$pass;
- $mysql_db=$db;
- $adminpass=$pass_secret;
- $admin=$admin;
- $version=$newversion;
- $mail=$mail;
- ?>
- <?php
- $install=1;
- $title=beírt adat;
- //ennek a mintájára az egész előbb mutatott rész
- ?>
Idézőjelek
var_export?
A var_export() függvénnyel egyszerűen ki tudsz exportálni változóértéket.
Én egy tömbbe tárolnám a változókat: $settings, vagy $GLOBALS['settings'] néven. A tömbös megoldással nagyon egyszerű lenne kiírni a beállításokat a fájlba:
(A záró PHP-tag nem kötelező, így elhagyjuk.)
Escape
Köszi
Szerializáció, vagy config fájl
serialize()
Én eddig szinte csak hátrányát láttam, nevezetesen, ha valamit keresni, vagy módosítani kellett benne, akkor nem volt egyszerű.
A nagyobb fájlméretet kivéve a var_dump() szerintem jobb megoldás volt, ráadásul sebességben is gyorsabb - mondjuk ezt még 4-es PHP-nél teszteltem.
Az INI, XML szintén: csak akkor jó, ha teljesen hozzá-nem-értő ember akarja konfigolni a rendszert, egyébként csak a beállító-fájl használatát bonyolítja a rendszer szemszögéből.
Ha rosszul látom, akkor homályosítson föl valaki, de eddig nekem ez volt a tapasztalatom. (Legalábbis a fájl-szinten történő beállításokat tekintve. A serialize() jó pl. akkor ha adatbázisban tárolsz, mivel akkor egy var_export()-kimenetet eval()-ozni kellene ami biztonsági problémákat vet föl, a serialize() meg egyszerűen lefut ugye a tárolt szövegen)