Utilizo a seguinte função para editar os arquivos de meu arquivo de configuração (config.php)
function edita_arquivo($arquivo,$trecho_antigo,$trecho_novo){
$file = file($arquivo) or $erro = true;
foreach($file as $texto)
{
$texto = ereg_replace($trecho_antigo, $trecho_novo, $texto);
$txt = $txt.$texto;
}
if(is_writable($arquivo)) {
$manipular = fopen($arquivo, 'w');
if(!$manipular)
{
return '<script>alert(\'Erro\nNão foi possível abrir o arquivo\');</script>
Erro<br /><br />Não foi possível abrir o arquivo.';
$erro = true;
}
if(!fwrite($manipular, $txt))
{
return '<script>alert(\'Erro\nNão foi possível gravar as informações no arquivo.\');</script>
Erro<br /><br />Não foi possível gravar as informações no arquivo.';
$erro = true;
}
if(!$erro)
{
return true;
}
else
{
return false;
}
fclose($manipular);
}
}
e a executo.
Assim eu altero o conteúdo das variáveis.
Mas há ocasiões onde o conteúdo de uma é semelhante ao da outra e quando vai alterar, ele altera coisa que não devia.
Se eu mando ele alterar contando com o início da variável (exemplo: $string = 'conteudo') a linha retirada pela função não cobre totalmente o texto de orogrm, impedindo a realização.
Como eu posso alterar uma variável do arquivo de configuração sem correr o risco de alterar outros dados?
Pergunta
h-abreu
Olá,
Boa tarde,
Utilizo a seguinte função para editar os arquivos de meu arquivo de configuração (config.php)
e a executo.
Assim eu altero o conteúdo das variáveis.
Mas há ocasiões onde o conteúdo de uma é semelhante ao da outra e quando vai alterar, ele altera coisa que não devia.
Se eu mando ele alterar contando com o início da variável (exemplo: $string = 'conteudo') a linha retirada pela função não cobre totalmente o texto de orogrm, impedindo a realização.
Como eu posso alterar uma variável do arquivo de configuração sem correr o risco de alterar outros dados?
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.