Я новичок в php и пытаюсь создать скрипт, который читает файл CSV (file1.csv) и сравнивает слова в файле со словами в html-файле (file2.html), если word в 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 без изменений
любая помощь будет оценена
спасибозаранее
Nader
Ps я отредактировал старый код с новым после вашего ценного совета ... теперь это так ... но все еще не работает.
Обновление:изменив foreach следующим образом:
$results = str_replace(array_keys($glossArray), "means ".array_values($glossArray), $file);
решил проблему ... но возникает другой: теперь каждый раз, когда он заменяет строку, он добавляет слово «Array» перед ней.