Jakiś czas temu, pytałem który format jest lepszy do przechowywanie danych połączeniowych z bazą: json, xml, ini, czy zwykły php.
Dzisiaj na szybko naskrobałem pseudo klasę(zarys, bez sprawdzania poprawności danych i kilku innych rzeczy). Czy mógłby mi ktoś powiedzieć, czy pomysł jest dobry, czy można by w jakiś inny sposób zapisywać same dane np. do istniejącej już tablicy. tzn:
Mamy plik config.php a w nim:
<?php $data['host'] = ' '; $data['user'] = ' ';
i teraz w miejsce pustych apostrofów dodawać bezpośrednio dane konfiguracyjne.
Cała koncepcja tyczy się, tak jak wspomniałem w temacie instalacji jakiegoś systemu ze strony poprzez formularz, bez grzebania w plikach.
A tak napisałem obecnie(cały plik nadpisywany jak widać):
<?php class DbData { private $fileName; private $host; private $user; private $password; private $database; private $config; public function __construct($host, $user, $password, $database) { $this->setHost($host); $this->setUser($user); $this->setPassword($password); $this->setDatabase($database); $this->createArray(); $this->setToFile('config.php'); } private function setToFile($fileName) { $this->fileName = $fileName; file_put_contents($this->fileName, $this->config, FILE_TEXT | LOCK_EX); } } private function createArray() { $this->config = '<?php $data = [ \'host\' => \''.$this->host.'\', \'user\' => \''.$this->user.'\', \'password\' => \''.$this->password.'\', \'database\' => \''.$this->database.'\', ];'; } protected function setHost($host) { $this->host = $host; } protected function setUser($user) { $this->user = $user; } protected function setPassword($password) { $this->password = $password; } protected function setDatabase($database) { $this->database = $database; } } $a = new DbData('localhost', 'root', '', 'db');
Pozdrawiam,
szubi