私はphpが初めてで、CSVファイル(file1.csv)を読み取り、file2.htmlの単語が一致する場合、ファイル内の単語をhtmlファイル(file2.html)の単語と比較するスクリプトを実行しようとしていますfile1.csvのキー部分を使用すると、一致したキーの値でfile2.htmlの内容を変更する必要があります..
私がこれまでに行ったことはこれです:
$glossArray = array();
$file_handle = fopen("file1.csv", "r");
while (!feof($file_handle) ) {
$line_of_text = fgetcsv($file_handle, 10000,';');
$glossArray[$line_of_text[0]] = $line_of_text[1];
$counter++;
}
fclose($file_handle);
$file = file_get_contents("file2.html");
foreach($glossArray as $key => $value){
$results = str_replace($key," means ".$value ,$file);
}
echo $results;
値を反復して変更しようとすると問題が発生すると思います..表示されるのは file2.html の内容のみが変更されていないためです
任意の助けをいただければ幸いです
前もって感謝します
ネーダー
PS あなたの貴重なアドバイスの後、新しいコードで古いコードを編集しました..今はこのようになっています..しかし、まだ機能しません。
更新: foreach を次のように変更します。
$results = str_replace(array_keys($glossArray), "means ".array_values($glossArray), $file);
問題を解決しました..しかし、別の問題が発生しました。文字列を置き換えるたびに、その前に「配列」という単語が追加されます。