RegEx

2017-08-18 10 views
-1

ファイルの内容を変更しようとしていますが、何も起こっていません。 .csvファイルにmoonwalkという単語が1つしかありません。助けてください。RegEx

$fn = file_get_contents("test.csv"); 
$pattern = '!moon!iu'; 
$replacement = 'LOL'; 
preg_replace($pattern, $replacement, $fn); 
file_put_contents('fixed.csv', $fn); 
chmod("fixed.csv", 0664); 
+0

読みます: //php.net/manual/en/function.preg-match.php)関数を呼び出します。すべての文字列関数として、引数を変更せずに無視する新しい文字列を返します。 – axiac

答えて

0

preg_replace関数はインプレース動作しない:

戻る(
にpreg_replace値)被験者パラメータはアレイ、または他の文字列である場合は、配列を返します。
一致するものが見つかると、新しいサブジェクトが返されます。そうでない場合、サブジェクトは変更されずに返されます。エラーが発生した場合はNULLが返されます。

の結果あなたは、その値が必要な場合は、関数の結果から、場合取る必要がありますので、返され置き換える:[ `するpreg_match()`](HTTP程度

$fn = preg_replace($pattern, $replacement, $fn); 
+0

助けてくれてありがとうございます;) – qqmydarling