Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从多维数组替换php_Php - Fatal编程技术网

从多维数组替换php

从多维数组替换php,php,Php,我在php中寻找一种方法,它可以替代像这样的字符串 <?php $ar = array( "ToFind" => "ToBeReplaced", "ToFind1" => "ToBeReplaced1" ); ?> 等等 有什么帮助吗? 谢谢使用str\u replace可以完成以下简单的更换任务: 如示例中所述,这有时可能导致意外行为,因为从左到右执行替换,即第一次替换的输出充当第二次替换的输入,依此类推。上的注释包含许多替换原始字符串中出现的内容的想法,例如,可能接

我在php中寻找一种方法,它可以替代像这样的字符串

<?php
$ar = array(
"ToFind" => "ToBeReplaced",
"ToFind1" => "ToBeReplaced1"
);
?>
等等

有什么帮助吗?
谢谢

使用str\u replace可以完成以下简单的更换任务:

如示例中所述,这有时可能导致意外行为,因为从左到右执行替换,即第一次替换的输出充当第二次替换的输入,依此类推。上的注释包含许多替换原始字符串中出现的内容的想法,例如,可能接近您要查找的内容:

function stro_replace($search, $replace, $subject)
{
    return strtr($subject, array_combine($search, $replace));
}

$search = array('ERICA', 'AMERICA');
$replace = array('JON', 'PHP');
$subject = 'MIKE AND ERICA LIKE AMERICA';

echo str_replace($search, $replace, $subject);
// output: "MIKE AND JON LIKE AMJON", which is not correct

echo stro_replace($search, $replace, $subject);
// output: "MIKE AND JON LIKE PHP", which is correct

使用str_replace可以完成以下简单的替换任务:

如示例中所述,这有时可能导致意外行为,因为从左到右执行替换,即第一次替换的输出充当第二次替换的输入,依此类推。上的注释包含许多替换原始字符串中出现的内容的想法,例如,可能接近您要查找的内容:

function stro_replace($search, $replace, $subject)
{
    return strtr($subject, array_combine($search, $replace));
}

$search = array('ERICA', 'AMERICA');
$replace = array('JON', 'PHP');
$subject = 'MIKE AND ERICA LIKE AMERICA';

echo str_replace($search, $replace, $subject);
// output: "MIKE AND JON LIKE AMJON", which is not correct

echo stro_replace($search, $replace, $subject);
// output: "MIKE AND JON LIKE PHP", which is correct

这个数组不是多维的,顺便说一句。我想你指的是关联数组,不是多维的。这个数组不是多维的,顺便说一句。我想你指的是关联数组,不是多维的。它从左到右替换,不是吗?我想要的只是替换所有匹配项string@kritya:你说从左到右替换是什么意思?它应该替换所有事件。看一看文档。不,看一看文档。它从左到右替换,不是吗?我想要的只是替换所有匹配项string@kritya:你说从左到右替换是什么意思?它应该替换所有事件。看一看文档。不,看一看文档。它从左到右替换,不是吗?我只想替换字符串中的所有匹配项不,这将替换字符串中的所有匹配项。@kritya是的,它从左到右替换。请看我编辑的答案。到家后我会试试。它会从左到右替换,不是吗?我只想替换字符串中的所有匹配项不,这将替换字符串中的所有匹配项。@kritya是的,它从左到右替换。看看我编辑过的答案。我到家后再试试
$ar = array("ToFind" => "ToBeReplaced", "ToFind1" => "ToBeReplaced1");
echo str_replace(array_keys($ar), $ar, $subject);