Добавить запись массива в php файл, который возвращает массив - PullRequest
0 голосов
/ 15 сентября 2018

У меня есть файл, который выглядит как

<?php
return [
    'key1' => 'value1',
    'key2' => 'value2',
    ...
];

, и я должен добавить запись массива в этот файл.В конце это должно выглядеть так:

<?php
    return [
        'key1' => 'value1',
        'key2' => 'value2',
        'key3' => 'value3'
    ];

Я читаю исходный массив по

$tmp_array = include 'path_to_file'

и добавляю новую запись по

$tmp_array["key3"] = "value3;

Но как мнесохраните его обратно в файл, чтобы он выглядел, как указано выше.

С уважением

1 Ответ

0 голосов
/ 15 сентября 2018

Вы можете использовать функцию var_export для этого

<?php

$tmp_array = include 'file_1.php';
$tmp_array["key3"] = "value3";
file_put_contents("file_1.php","<?php\nreturn ".var_export($tmp_array, true).";\n?>");

?>

Это работает для меня

До:

<?php
    return [
      'key1' => 'value1',
      'key2' => 'value2',
    ];
    ?>

После:

<?php
return array (
  'key1' => 'value1',
  'key2' => 'value2',
  'key3' => 'value3',
);
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...