software:development:demo:cms:ucms:creating_file_config
                Различия
Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
| software:development:demo:cms:ucms:creating_file_config [2025/04/27 15:02] – создано vladpolskiy | software:development:demo:cms:ucms:creating_file_config [2025/05/11 20:35] (текущий) – внешнее изменение 127.0.0.1 | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | ======  | + | ======  | 
| - | **config.php** - это файл конфигурации нашего приложения, | + | =====Введение===== | 
| + | **config.ini** - это файл конфигурации нашего приложения  | ||
| + | него самостоятельно не будем и в конце этой главы мы его удалим.  | ||
| + | Этот файл будет создаваться при установке нашего приложением и в него будут записаны файлы конфигурации. | ||
| + | |||
| + | В данном случае мы создаем пустой файл **config.ini** для проверки работы логики установщика. А именно: | ||
| + | Установщик проверит, | ||
| + | установка уже произведена и повторная не требуется и перенаправит пользователя | ||
| + | на страницу установленой  | ||
| + | |||
| + | Добавим в нашу дерикторию тестов,  | ||
| + | |||
| + | <code php config_test.php> | ||
| + | < | ||
| + | |||
| + | <?php | ||
| + | 	/* Подключем файл cons.php из директории includes  | ||
| + |     include " | ||
| + | /* Присваиваем переменной $file_config значение константы FOLDER | ||
| + | (а это директория ucms, записанная в файле cons.php)и добовляем | ||
| + | 	'/ | ||
| + |     $file_config = FOLDER . '/ | ||
| + | /* Если config.config.ini существует */ | ||
| + | if (file_exists($file_config)) { | ||
| + | /* выводим запись о существовании */ | ||
| + | 			echo " | ||
| + | 	/* Иначе выводим запись о существовании*/ | ||
| + | } else { | ||
| + | 			echo " | ||
| + | } | ||
| + | ?> | ||
| + | </ | ||
| + | Сохраним изменения и проверим работу кода в браузере | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Заходим в директорию **includes** и перемещаем файл **config.ini** в директорию **demo** | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Проверим снова работу кода файла **config_test.php** в браузере | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Получаем сообщение: | ||
| + | Файл / | ||
| + | |||
| + | В директории **includes** и в директории **/test** создаем файл **config_test_2.php** | ||
| + | <code php config_test_2.php> | ||
| + | < | ||
| + | <?php | ||
| + | // Создание и вызов параметров из .ini файла | ||
| + | //////////////////////////////////////////// | ||
| + | /* задаем переменной  | ||
| + | * parse_ini_file - обрабатывает конфигурационный файл | ||
| + | * ../ | ||
| + | * ,true); - обрабатываем с секциями (зпголовками) | ||
| + | */ | ||
| + | $config = parse_ini_file(" | ||
| + | // Проверьте, | ||
| + | // переменная $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** в директории **/ | ||
| + | **$server** и **$port** в сообщении: | ||
| + | |||
| + | Откроем созданный файл **config.ini** в блокноте | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Мы видем записи нашего массива в файле. Перемещаем **config.ini** в директорию **demo** | ||
| - | В данном случае мы создаем пустой файл **config.php** для проверки работы логики установщика. А именно: | ||
| <note blue> | <note blue> | ||
| - | <wrap left>← [[software: | + | <wrap left>← [[software: | 
| - | <wrap right> | + | <wrap right> | 
| </ | </ | ||
software/development/demo/cms/ucms/creating_file_config.1745755365.txt.gz · Последнее изменение:   — vladpolskiy
                
                