software:development:demo:cms:ucms:creating_file_config
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| software:development:demo:cms:ucms:creating_file_config [2025/05/09 07:57] – vladpolskiy | software:development:demo:cms:ucms:creating_file_config [2025/05/11 20:35] (текущий) – внешнее изменение 127.0.0.1 | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | ====== 7.2. Файл config.php ====== | + | ====== 7.2. Файл config.ini ====== |
| - | **config.php** - это файл конфигурации нашего приложения, | + | =====Введение===== |
| + | **config.ini** - это файл конфигурации нашего приложения | ||
| + | него самостоятельно не будем и в конце этой главы мы его удалим. | ||
| + | Этот файл будет создаваться при установке нашего приложением и в него будут записаны файлы конфигурации. | ||
| - | В данном случае мы создаем пустой файл **config.php** для проверки работы логики установщика. А именно: | + | В данном случае мы создаем пустой файл **config.ini** для проверки работы логики установщика. А именно: |
| + | Установщик проверит, | ||
| + | установка уже произведена и повторная не требуется и перенаправит пользователя | ||
| + | на страницу | ||
| - | Добавим в нашу дерикторию тестов, | + | Добавим в нашу дерикторию тестов, |
| - | <code php test_1.php> | + | <code php config_test.php> |
| - | < | + | < |
| <?php | <?php | ||
| Строка 14: | Строка 20: | ||
| /* Присваиваем переменной $file_config значение константы FOLDER | /* Присваиваем переменной $file_config значение константы FOLDER | ||
| (а это директория ucms, записанная в файле cons.php)и добовляем | (а это директория ucms, записанная в файле cons.php)и добовляем | ||
| - | '/ | + | '/ |
| - | $file_config = FOLDER . '/ | + | $file_config = FOLDER . '/ |
| - | /* Если config.php существует */ | + | /* Если config.config.ini |
| if (file_exists($file_config)) { | if (file_exists($file_config)) { | ||
| /* выводим запись о существовании */ | /* выводим запись о существовании */ | ||
| Строка 28: | Строка 34: | ||
| Сохраним изменения и проверим работу кода в браузере | Сохраним изменения и проверим работу кода в браузере | ||
| - | {{: | + | {{: |
| - | Заходим в директорию **includes** и перемещаем файл **config.php** в директорию **demo** | + | Заходим в директорию **includes** и перемещаем файл **config.ini** в директорию **demo** |
| - | {{: | + | {{: |
| - | Проверим снова работу кода файла **test.php** в браузере | + | Проверим снова работу кода файла **config_test.php** в браузере |
| - | {{: | + | {{: |
| Получаем сообщение: | Получаем сообщение: | ||
| Файл / | Файл / | ||
| - | Возвращаем файл **config.php** в директорию **includes** | + | В директории **includes** и в директории **/test** создаем файл **config_test_2.php** |
| + | <code php config_test_2.php> | ||
| + | < | ||
| + | <?php | ||
| + | // Создание и вызов параметров из .ini файла | ||
| + | //////////////////////////////////////////// | ||
| + | /* задаем | ||
| + | * parse_ini_file - обрабатывает конфигурационный | ||
| + | * ../ | ||
| + | * ,true); - обрабатываем с секциями (зпголовками) | ||
| + | */ | ||
| + | $config | ||
| + | // Проверьте, | ||
| + | // переменная $config не ровно ЛОЖЬ | ||
| + | if ($config !== false) { | ||
| + | // Доступ к индивидуальным настройкам | ||
| + | |||
| + | $server = $config[' | ||
| + | echo " | ||
| + | $port = $config[' | ||
| + | echo "port: " . $port . " | ||
| + | } else { | ||
| + | echo " | ||
| + | } | ||
| + | |||
| + | // Создаем массив пар | ||
| + | $databaseSections = [ | ||
| + | ' | ||
| + | ' | ||
| + | ]; | ||
| + | |||
| + | // Записать конфигурацию в раздел «' | ||
| + | $success = write_to_ini($databaseSections, | ||
| + | |||
| + | // Проверим, | ||
| + | if ($success) { | ||
| + | echo " | ||
| + | } else { | ||
| + | echo " | ||
| + | } | ||
| + | // Функция записи настроек в определенный раздел INI-файла | ||
| + | function write_to_ini($config, | ||
| + | $content = "\n; Application Configuration Settings\n\n[$section]\n; | ||
| + | |||
| + | foreach ($config as $key => $value) { | ||
| + | $content .= "$key = $value\n"; | ||
| + | } | ||
| + | |||
| + | // Добавить содержимое в файл | ||
| + | return file_put_contents($file, | ||
| + | } | ||
| + | </ | ||
| + | === Запись данных в **config.ini** === | ||
| + | Откроем файл **config_test_2.php** в браузере | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Мы видим сообщение " | ||
| + | |||
| + | === Чтение данных из **config.ini** === | ||
| + | |||
| + | Обновим страницу веб-браузера | ||
| + | |||
| + | {{: | ||
| + | |||
| + | файл **config.ini** в директории **/includes** создан и выводится значения переменных | ||
| + | **$server** и **$port** в сообщении: | ||
| + | |||
| + | Откроем созданный файл **config.ini** в блокноте | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Мы видем записи нашего массива в файле. Перемещаем **config.ini** в директорию **demo** | ||
| <note blue> | <note blue> | ||
software/development/demo/cms/ucms/creating_file_config.1746766644.txt.gz · Последнее изменение: — vladpolskiy
