Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Сохранение массива в файл
Форумы портала PHP.SU » » Вопросы новичков » Сохранение массива в файл

Страниц (1): [1]
 

1. xXapokalypsesXx - 01 Апреля, 2015 - 23:01:32 - перейти к сообщению
Здравствуйте!
Есть файл edit.php:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. include 'config.php';
  3. $handler = fopen('config.php', 'w');
  4. fwrite($handler, "<?PHP \n\$config = array(\n");
  5. foreach($config as $key => $value) {
  6.     $key = 'title';
  7.     $key = 'description';
  8.     $key = 'keywords';
  9.  
  10.     $value = 'TITLE-1';
  11.     $value = 'DESCRIPTION-1';
  12.     $value = 'KEYWORDS-1';
  13.  
  14.     $space = str_repeat(' ', 4);
  15.  
  16.     fwrite($handler, "{$space}'{$key}' => '{$value}',\n");
  17. }
  18. fwrite($handler, ");\n?>");
  19. fclose($handler);
  20. ?>


И есть config.php:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $config = array(
  3.     'title' => 'TITLE',
  4.     'description' => 'DESCRIPTION',
  5.     'keywords' => 'KEYWORDS',
  6. );
  7. ?>


Не правильно срабатывает скрипт.
При выполнении файла edit.php, config.php становиться такого вида:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $config = array(
  3.     'keywords' => 'KEYWORDS-1',
  4.     'keywords' => 'KEYWORDS-1',
  5.     'keywords' => 'KEYWORDS-1',
  6. );
  7. ?>


А должен получиться таким:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $config = array(
  3.     'title' => 'TITLE-1',
  4.     'description' => 'DESCRIPTION-1',
  5.     'keywords' => 'KEYWORDS-1',
  6. );
  7. ?>


Что я не правильно написал?
Может есть способ лучше? Буду благодарен за любую помощь.
2. Faraon-san - 01 Апреля, 2015 - 23:05:23 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. include 'config.php';
  2. $handler = fopen('config.php', 'w');
  3. fwrite($handler, "<?PHP \n\$config = array(\n");
  4. foreach($config as $key => $value) {
  5.    $space = str_repeat(' ', 4);
  6.  
  7.    fwrite($handler, "{$space}'{$key}' => '{$value}',\n");
  8. }
  9. fwrite($handler, ");\n?>");
  10. fclose($handler);
3. xXapokalypsesXx - 01 Апреля, 2015 - 23:13:50 - перейти к сообщению
Faraon-san, а как же я передам новые данные в config.php?
4. Faraon-san - 01 Апреля, 2015 - 23:24:12 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. include 'config.php';
  2. $handler = fopen('config.php', 'w');
  3. $config['meta'] = 'charset="utf-8"';
  4. fwrite($handler, "<?PHP \n\$config = array(\n");
  5. foreach($config as $key => $value) {
  6.   $space = str_repeat(' ', 4);
  7.  
  8.   fwrite($handler, "{$space}'{$key}' => '{$value}',\n");
  9. }
  10. fwrite($handler, ");\n?>");
  11. fclose($handler);
5. xXapokalypsesXx - 01 Апреля, 2015 - 23:28:52 - перейти к сообщению
Faraon-san, большое спасибо Улыбка

 

Powered by ExBB FM 1.0 RC1