Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.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,我试图循环一个数组并替换另一个数组的_数组中的值 $array = array("username"=>"Bill", "email" => "Email Address"); $unset = array("Username","Email Address"); // Array of default values for inputs foreach($array as $key => $value) { global $unset; if(in_array

我试图循环一个数组并替换另一个数组的_数组中的值

$array = array("username"=>"Bill", "email" => "Email Address");
$unset = array("Username","Email Address"); // Array of default values for inputs
foreach($array as $key => $value) {
    global $unset;
    if(in_array($value, $unset)) {
        $value = "-";
    }
}
print_r($array["email"]);
我想替换$array中的值,其中默认值与“-”匹配。不要查看取消设置和阵列拼接,请按住空格。

尝试以下操作:

$array = array("username"=>"Bill", "email" => "Email Address");
$unset = array("Username","Email Address"); // Array of default values for inputs

foreach($array as &$value) {
    if(in_array($value, $unset)) {
        $value = "-";
    }
}
print_r($array["email"]);

另一种方法是

$array = array("username"=>"Bill", "email" => "Email Address");
$unset = array("Username","Email Address"); // Array of default values for inputs
foreach($array as $key => $value) {
    if(in_array($value, $unset)) {
        $array[$key] = "-";
    }
}
print_r($array["email"]);

那也行!我刚刚发现$array[$key]=“-”;作品我将使用您的方法并对此进行一些研究。将$value=“-”替换为$array[$key]=“-”;也可以使用。
foreach($key=>数组和$value)
——注意符号和。如果执行此操作,请记住在循环结束后取消设置($value),以免以后意外覆盖最新元素。@Mark我将对此进行更多研究,我仍在尝试学习foreach。感谢您的提醒:)符号使
$value
引用数组中的原始项。没有它,你基本上只是在编辑一份。很好。很好。这些东西总是让我感到困惑,但那个解释很好。