[RESOLU] remplacer une ligne avec str_replace grrr help

Eléphanteau du PHP | 19 Messages

09 févr. 2019, 17:41

Bonjour a tous
comme je suis zero en php
j'éprouve de la difficulté a remplacer ou a supprimer une ligne dans un php avec str_replace
voici la ligne en question

Code : Tout sélectionner

<header <?php if($this->getData(['theme', 'header', 'position']) === 'hide'): ?>class="displayNone"<?php endif; ?>>
et voici le code pour la supprimer ou la remplacer par qqchose..

Code : Tout sélectionner

<?php $file = $_SERVER['DOCUMENT_ROOT'] .'/testreplace.php';; $cherche = '<header <?php if($this->getData(['theme', 'header', 'position']) === 'hide'): ?>class="displayNone"<?php endif; ?>>'; $remplace = ''; $filecontent=file_get_contents($file); $replace=str_replace("$cherche", "$remplace", $filecontent ); file_put_contents($file, $replace); ?>
ça me fait une jolie erreur
Parse error: syntax error, unexpected 'theme' (T_STRING) in C:\xampp\htdocs\test.php on line 3

et il possible de me donner un coup de main? merci d' avance..

Mammouth du PHP | 1553 Messages

11 févr. 2019, 09:21

Il faut que tu échappe tes simple quotes dans ta variable cherche
<?php
$file = $_SERVER['DOCUMENT_ROOT'] .'/testreplace.php';;
$cherche = '<header <?php if($this->getData([\'theme\', \'header\', \'position\']) === \'hide\'): ?>class="displayNone"<?php endif; ?>>';
$remplace = '';
$filecontent=file_get_contents($file);
$replace=str_replace($cherche, $remplace, $filecontent );
file_put_contents($file, $replace);
?>
PS tes double quote autout de $cherche et $remplace sont inutile même si elle ne généreront pas d'erreur.
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone de rubik's cube
Ingénieur Industriel Chimie / Biochimie

Eléphanteau du PHP | 19 Messages

13 févr. 2019, 00:09

trop cool grand merci Spols pour la réponse
PS: moi aussi je suis fan de rubik's cube merci pour le liens