替换数组中 php 中具有 "o" 字母的所有值
replace all values in array that have "o" letter in php
这是我的数组
$arr = array("dog", "cat", "lion");
现在我想用 0 替换任何带有字母 o 的值。
示例:
$arr = array("d0g", "cat", "li0n");
这是我的方法:
$arr = array("dog", "cat", "lion");
$arr2 = array("d0g", "cat", "li0n");
$rep = array_replace($arr, $arr2);
var_dump($rep);
这个方法完全是手动的。虽然我想要一种方法来自动跟踪任何值中的字母 'o' 并用 '0' 移动它们。
foreach ($arr as $key => $string) {
$arr[$key] = str_replace("o", "0", $string);
}
或
$arr = array_map(function ($el) { return str_replace("o", "0", $el);}, $arr);
您可以使用 array_map
(使用某种转换函数将数组的所有值映射到新值)和 str_replace
(将 o
替换为 0
):
$arr = ['dog', 'cat', 'lion'];
$rep = array_map(fn($el) => str_replace('o', '0', $el), $arr);
(请注意,这使用 PHP 7.4 arrow function syntax。如果您必须使用较旧的 PHP 版本,则可以使用 function ($el) {
return str_replace('o', '0', $el) }
而不是 fn($el) => str_replace('o', '0', $el)
。)
这是我的数组
$arr = array("dog", "cat", "lion");
现在我想用 0 替换任何带有字母 o 的值。 示例:
$arr = array("d0g", "cat", "li0n");
这是我的方法:
$arr = array("dog", "cat", "lion");
$arr2 = array("d0g", "cat", "li0n");
$rep = array_replace($arr, $arr2);
var_dump($rep);
这个方法完全是手动的。虽然我想要一种方法来自动跟踪任何值中的字母 'o' 并用 '0' 移动它们。
foreach ($arr as $key => $string) {
$arr[$key] = str_replace("o", "0", $string);
}
或
$arr = array_map(function ($el) { return str_replace("o", "0", $el);}, $arr);
您可以使用 array_map
(使用某种转换函数将数组的所有值映射到新值)和 str_replace
(将 o
替换为 0
):
$arr = ['dog', 'cat', 'lion'];
$rep = array_map(fn($el) => str_replace('o', '0', $el), $arr);
(请注意,这使用 PHP 7.4 arrow function syntax。如果您必须使用较旧的 PHP 版本,则可以使用 function ($el) {
return str_replace('o', '0', $el) }
而不是 fn($el) => str_replace('o', '0', $el)
。)