替换数组元素php


Replace array elements php

是否可以用另一个替换和数组?

$databas= array("data1", "data2", "data3", "data4");
$replace_datbas= array("Estimate","Market","Assesments","Products");
foreach($databas as $data){
mysql_query("SELECT * FROM doc WHERE $data='1')"
  foreach($replace_databas as $replace_data){

    $data=$replace_data

    echo"$data";
  }
}

编辑我需要替换foreach循环中的数组,因为我不能在它之前完成,因为我需要在替换它之前将$database数组添加到我的mysql_query中。

是的,您可以使用引用:

$database = array("data1", "data2", "data3", "data4");
$replace_datbase = array("Estimate","Market","Assesments","Products");
foreach($database as &$data){
    foreach($replace_datbase as $replace_data){
        $data = $replace_data;
    }
}

但你可能是这个意思(上面的内部foreach没有意义——$data的值总是$replace_database的最后一个值(:

$database = array("data1", "data2", "data3", "data4");
$replace_datbase = array("Estimate","Market","Assesments","Products");
foreach($database as $index => &$data){
    $data = $replace_data[$index];
}

是,使用如下:

foreach($databas as $key=>$data)
{
    $databas[$key] = $replace_databas[$key];
}
$databas = $replace_datbas;

要么我误解了你的要求,要么你把这种方式搞得太复杂了。

您可以使用array_replace-

$databas= array("data1", "data2", "data3", "data4");
$replace_datbas= array("Estimate","Market","Assesments","Products");
$result = array_replace($dtabas, $replace_databas);

请记住,此将第一个数组的值替换为第二个数组的具有相同键的值