Инструменты пользователя

Инструменты сайта


software:development:demo:cms:ucms:creating_file_config

Это старая версия документа!


7.2. Файл config.ini

config.ini - это файл конфигурации нашего приложения, мы с вами ничего записывать в него самостоятельно не будем и в конце этой главы мы его удалим. Этот файл будет создаваться при установке нашего приложением и в него будут записаны файла конфигурации.

В данном случае мы создаем пустой файл config.ini для проверки работы логики установщика. А именно: Установщик проверит, есть ли в директории /ucms/includes файл config.ini, что будет означать, что установка уже произведена и повторная не требуется и перекинет нас на страницу авторизации, в случае отсутствия файла config.ini продолжиться установка.

Добавим в нашу дерикторию тестов, тестовый файл test_1.ini и в него запишем следующий код:

test_1.ini
<!--  test_1.ini  -->
 
<?php
	/* Подключем файл cons.php из директории includes  */
    include "../includes/cons.php";
	/* Присваиваем переменной $file_config значение константы FOLDER 
	(а это директория ucms, записанная в файле cons.php)и добовляем 
	'/includes/config.php' - директорию includes и искомый файл config.ini */
    $file_config = FOLDER . '/includes/config.php';
	/* Если config.php существует */
        if (file_exists($file_config)) {
	/* выводим запись о существовании */
			echo "Файл $file_config существует";
	/* Иначе выводим запись о существовании*/
		} else {
			echo "Файл $file_config не существует";
		}
?>		

Сохраним изменения и проверим работу кода в браузере

Заходим в директорию includes и перемещаем файл config.php в директорию demo

Проверим снова работу кода файла test.php в браузере

Получаем сообщение: Файл /volume1/web/ucms/includes/config.php не существует

Возвращаем файл config.php в директорию includes

index.php
// Создание и вызов параметров из
<?php echo "я в датабаза"; ?>
 
 
 
<?php 
 
//$source=file_get_contents('../../includes/config.ini');
$config = parse_ini_file("../../includes/config.ini",true);
 
 
// Find  if the ini file  is read successfully
if ($config !== false) {
    // Access individual settings
      echo "server: " . $config['database']['server'] . "\n";
      echo "port: " . $config['database']['port'] . "\n";
      echo "username: " . $config['User']['username'] . "\n";
} else {
    echo "Read INI file Failed.";	
}
//password = secret
$lang_select = $config['User25']['password'];
echo $lang_select;
 
// Create an array of pairs
$databaseSections = [
    'server' => 'localhost',
    'port' => 3000,
];
 
// Write configuration to the 'database' section
$success = write_to_ini($databaseSections, 'database', 'result.ini');
 
// Check if the write-to file successful
if ($success) {
    echo "Write to file successfully!";
} else {
    echo "Write INI file Failed.";
}
// Function to write settings to a specific section in an INI file
function write_to_ini($config, $section, $file) {
    $content = "\n; Application Configuration Settings\n\n[$section]\n; Configuration\n";
 
    foreach ($config as $key => $value) {
        $content .= "$key = $value\n";
    }
 
    // Append content to file
    return file_put_contents($file, $content, FILE_APPEND) !== false;
}
Только авторизованные участники могут оставлять комментарии.
software/development/demo/cms/ucms/creating_file_config.1746886605.txt.gz · Последнее изменение: vladpolskiy