Nic*_*ard 2 php arrays associative preg-replace
在preg_replace的文档中,它说你可以使用索引数组来替换多个字符串.我想用关联数组做这个,但它似乎不起作用.
有谁知道这确实不起作用?
您想要在键或键和值上执行此操作,还是仅保留键并处理值?无论是哪种情况,array_combine(),array_keys()并array_values()可以组合实现这一目标.
在键上:
$keys = array_keys($input);
$values = array_values($input);
$result = preg_replace($pattern, $replacement, $keys);
$output = array_combine($result, $values);
Run Code Online (Sandbox Code Playgroud)
关于键和值:
$keys = array_keys($input);
$values = array_values($input);
$newKeys = preg_replace($pattern, $replacement, $keys);
$newValues = preg_replace($pattern, $replacement, $values);
$output = array_combine($newKeys, $newValues);
Run Code Online (Sandbox Code Playgroud)
在值保留键上:
$keys = array_keys($input);
$values = array_values($input);
$result = preg_replace($pattern, $replacement, $values);
$output = array_combine($keys, $result);
Run Code Online (Sandbox Code Playgroud)
所有这些都假定一个函数类似于:
function regex_replace(array $input, $pattern, $replacement) {
...
return $output;
}
Run Code Online (Sandbox Code Playgroud)