php - 如何用键为search_string的数组的值替换单词(search_string)
问题描述
我找不到替换字符串中单词的正确方法,其中 word_to_be_replaced 是键,而 word_to_replace_with 是 csv 中的相应值。
例子:
String: "The water is blue."
csv:
sky, ocean
colour, mood
water, painting
Expected outcome:
"The painting is blue."
我是 php 的初学者。我问了一个有点类似的问题 - 但我不能让我收到的答案工作......
到目前为止,我有:
$file = fopen("mods/test.csv","r");
while (($csv = fgetcsv($file)) !== false) {
$replace[$csv[0]] = $csv[1];
}
$blub = strtr($mpref, $replace);
我错过了什么?
解决方案
你应该使用str_replace
. 检查文档
您需要构建 2 个数组,$search
它们$replace
将分别包含要搜索和替换的值。
$file = fopen("mods/test.csv","r");
$search = array();
$replace = array();
while (($csv = fgetcsv($file)) !== false) {
//$replace[$csv[0]] = $csv[1];
$search = $csv[0];
$replace = $csv[1];
}
$mpref = "The water is blue";
echo str_replace($search, $replace, $mpref);
//prints The painting is blue