Хранение настроек в файле


Хранение настроек в файле PHP

Бывает ситуация, когда необходимо где-то хранить какие либо настройки скрипта. Это могут быть как языковые настройки, выбор определенного «скина» для сайта, количество отображаемых новостей на главной странице, и прочее…

Вариантов хранения таких настроек масса. Начиная от сериализации массива с последующей записью этой строки в БД, заканчивая файлами с настройками в формате JSON.

Хранение в cookie’s не дает такого эффекта, ввиду того, что эти настройки легко удаляются самим пользователем, либо пользователь не догадывается что его куки удалились.

Как один из вариантов, хочу предложить использовать функцию var_export.

Эта функция выводит в браузер или возвращает интерпретируемое строковое представление переменной.

Функция аналогична var_dump() за одним исключением: возвращаемое представление является полноценным PHP кодом.

Пример:

$a = array (1, 2, array ("a", "b", "c"));
var_export($a);

Результат:

array (
  0 => 1,
  1 => 2,
  2 => 
  array (
    0 => 'a',
    1 => 'b',
    2 => 'c',
  ),
)

Ну и напоследок, пример кода для хранения массива в файле, который можно в последствии «инклюдить»


<?php
$data=array(
    'showid'=>0,
    'savecookie'=>1
);
$text=var_export($data,true);
file_put_contents('conf.php','<?php'."\n".'$data='.$text."\n".'?>');
?>

Оцените статью или поделитесь ей в соцсетях:

+ 0 | - 0

Рекомендуемые статьи:


Комментарии

  1. Гоша 16 января 2020

    По-моему ужасный совет.

    Инклудить в своём проекте файл который генерируется каким-то другим скриптом… Ну это дичь. Навроде eval’а.

    Неужто какие-то проблемы с тем, чтобы просто внести коррективы в статический файл config.php? К чему дополнительные надстройки над абсолютно примитивным действием?

Оставьте комментарий!

Поля обозначенные как * требуются обязательно. Перед постингом всегда делайте просмотр своего комментария.