Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class configs {
- public static $array = [
- ['subarray0','Heading 0',['0-0','0-1']], // configs::$array[0] =>
- ['subarray1','Heading 1',['1-0','1-1']] // configs::$array[1] =>
- ];
- }
- ?>
- <?php
- $fileToBeOverwritten = __DIR__ .'/configs.php';
- require_once $fileToBeOverwritten;
- $currentSubarray = configs::$array[1]; // берем текущий подмассив с индексом 1 с общего массива $array
- configs::$array[1][1] = 'New Heading 1'; // меняем 'Heading 1' на 'New Heading 1'
- $changedSubarray = configs::$array[1]; // определяем изменённый подмассив
- $currentFileSource = file_get_contents($fileToBeOverwritten); // берем текущий код configs.php
- $changedFileSource = str_replace($currentSubarray,$changedSubarray,$currentFileSource); // заменяем в коде файла текущий подмассив изменённым подмассивом
- file_put_contents($fileToBeOverwritten,$changedFileSource); // перезаписываем изменённый код файла
- ?>
- ...
- $currentSubarray = configs::$array[1];
- configs::$array[1][2][0] = 'New 1-0'; // берём в подмассиве с индексом 1 третий элемент, который является вложенным массивом и пытаемся поменять в нем значение первого элемента
- $changedSubarray = configs::$array[1];
- ...
- <?php $configs = [
- 'array' => [
- ['subarray0','Heading 0',['0-0','0-1']], // 0 =>
- ['subarray1','Heading 1',['1-0','1-1']] // 1 =>
- ]
- ];
- ?>
- <?php
- $fileToBeOverwritten = __DIR__ .'/configs.php';
- require_once $fileToBeOverwritten;
- $configs['array'][1][2][0] = 'New 1-0';
- file_put_contents($fileToBeOverwritten, '<?php $configs = '.var_export($configs, true));
- ?>
- $changedFileSource = '<?php
- class configs {
- public static $array = ' . var_export($changedConfigs) . ';
- }
- ';
- file_put_contents($fileToBeOverwritten, $changedFileSource);
- <?php
- // configs.php
- return [
- ['subarray0','Heading 0',['0-0','0-1']],
- // ...
- ];
- <?php
- // main.php
- $configs = require __DIR__ . '/configs.php';
Add Comment
Please, Sign In to add comment