Изменить часть файла php, используя php

как я могу изменить только часть файла php. Фактически добавьте переменную или измените одну переменную в уже существующем php файле. Я пробовал следующим образом, но это стирает все и отгоняет только текст "Я люблю PHP".

$myFile = '../new_folder_name/index.php'; 
$myContent = 'I love PHP'; 

file_put_contents($myFile, utf8_encode($myContent));

Я хочу добавить, например, переменную с именем $ test, которая равна 10. $test="10"; или изменить уже существующую переменную $test на 10.

2 ответа

Попробуйте добавить новый контент

$myFile = '../new_folder_name/index.php'; 
$myContent = 'I love PHP';
$file=fopen($myFile,"a");
fputs($file,$myContent);
fclose($file);

Для игры с переменными нам нужно обрабатывать php файл как обычный текстовый файл здесь

function get_str_btwn($string, $start, $end)//an function to get string between two string in an string
{
 $string = " " . $string;
 $ini = strpos($string, $start);
 if ($ini == 0)
 return "";
 $ini += strlen($start);
 $len = strpos($string, $end, $ini) - $ini;
 return substr($string, $ini, $len);
}
$file=file_get_contents($myFile);
if(substr_count($file,"$myContent"))
$file=str_ireplace(get_str_btwn($file,"$myContent =",";"),"I love PHP",$file);//Assuming format of php file is $myContent is initialized like $myContent="something"; 
else
$file=str_ireplace("<!--?php","<?php $myContent = 'I love PHP';",$file);
</code-->
<p> Обратите внимание, что этот код очень чувствителен и может привести к ошибкам в сгенерированном файле php и не рекомендуется для регулярного использования, если вы не уверены в формате файла php.</p>


Я создаю php файл с php файлом

Я хочу, чтобы каждый файл имел другое значение переменной $ test. Я хотел, чтобы после создания файла было возможно изменить значение переменной в созданном файле

licensed under cc by-sa 3.0 with attribution.