Нужно найти простое решение для следующего:
У меня есть php-файл, который при выполнении должен иметь возможность заменить конкретную строку кода внутри себя другим значением в этой строке.
Я придумал это до сих пор:
$file = "file.php";
$content = file($file);
foreach($content as $lineNumber => &$lineContent) {
if($lineNumber == 19) {
$lineContent .= "replacement_string";
}
}
$allContent = implode("", $content);
file_put_contents($file, $allContent);
Однако это не заменяет конкретную строку. Добавляет новую строку в новую строку и все. Мне нужна эта конкретная строка УДАЛЕНА, а затем ЗАМЕНЕНА с новой строкой, в этой строке.
Как бы я продолжил делать это? Я хотел бы несколько указателей.
Ваша проблема заключается в .=
в $lineContent .= "replacement_string";
линия. Просто используйте =
или используйте str_replace()
или же str_ireplace()
функция.
Других решений пока нет …