У меня есть файл конфигурации со следующим содержимым;PHP preg_replace между строкой и кавычками
[settings]
; absolute path to the temp dir. If empty the default system tmp directory will be used
temp_path = ""
; if set to true: detects if the contents are UTF-8 encoded and if not encodes them
; if set to false do nothing
encode_to_UTF8 = "false"
; default document language
language = "en-US"
; default paper size
paper_size = "A4"
[license]
; license code
code = "8cf34efe0b57013668df0dbcdf8c82a9"
мне нужно заменить ключ между кодом = «*» к чему-то еще, как я могу сделать это с preg_replace()? Файл конфигурации содержит больше параметров, поэтому мне нужно только заменить ключ между
code = "*replace me*"
Это должно быть что-то вроде этого;
$licenseKey = 'newLicenseKey';
$configFileContent = file_get_contents(configFile.ini);
$configFileContent = preg_replace('/(code = ")(.*)(")/', $licenseKey, $configFileContent);
Но это заменяет всю строку только новым лицензионным ключом.
Как я могу это сделать?
вы можете вставить пример вывода? и что вы пробовали до сих пор? –
Я обновил свой пост выше. – Lumix1991
что, для меня, выглядит как ini-файл. PHP имеет [функцию 'parse_ini_file'] (http://php.net/manual/en/function.parse-ini-file.php), которая возвращает массив. Используйте это, отредактируйте, что нужно для редактирования и использования этих данных (чтобы написать новый ini-файл или что-то еще) –