需要用大写搜索词替换针对数组进行测试的字符串中的所有当前词。
我现在坚持正确的循环。
我的代码:
$array = [
'weizen',
'dinkel',
'gerste',
'khorasan',
'eier',
'haselnuss',
'walnuss'];
$description = "Weizenbrötchen auf Hartweizenbasis und Eiern mit Walnusscreme und Haselnusspaste sind leckerer mit Dinkelflocken."
foreach($array as $item) {
if (strpos($description, $item) !== false) {
// $description;
echo
str_replace($item, mb_strtoupper($item), $description);
}
}
实际结果:“WEIZENbrötchenAUF Hartweizenbasis UND Eiern MIT Walnusscreme UND Haselnusspaste信德leckerer MITDinkelflocken.Weizenbrötchen奥夫Hartweizenbasis UND EIERn MIT Walnusscreme UND Haselnusspaste信德leckerer MITDinkelflocken.Weizenbrötchen奥夫Hartweizenbasis UND Eiern MIT WALNUSScreme UND Haselnusspaste信德leckerer MITDinkelflocken.Weizenbrötchen奥夫Hartweizenbasis UND Eiern MIT Walnusscreme和HASELNUS Spaste犯罪的Deckelflocken先生。
所需结果:
[WEIZENbrötchenauf HartWEIZENbasis and Eiern mit WALNUScreme和HASELNUSSpaste sind lererer mit DINKELflocken。
需要用大写搜索词替换针对数组进行测试的字符串中的所有当前词。我现在坚持正确的循环。我的代码:$ array = ['weizen','...
使用array_map
将原始数组转换为大写字母并准备模式,然后使用preg_replace
进行操作:
一种方法是在要替换的字符串中制作一个正则表达式,然后使用preg_replace_callback
将所有匹配的值转换为大写: