动态替换数组

时间:2018-06-07 19:43:54

标签: php arrays

我有这种情况

$array = ['apples', 'tomatoes'];

$items = ['bananas'];

我想用香蕉代替苹果,但如果在项目中没有任何其他价值,则要去掉西红柿。

当我尝试使用array_replace时,我得到了这个

dd(array_replace($array, $items));

array = [
  0: "bananas",
  1: "tomatoes"
]

如何检查数组项是否有多个键并替换为相应的键?

2 个答案:

答案 0 :(得分:1)

这可以使用array_intersect_key来完成,https://docs.microsoft.com/en-us/azure/mysql/connect-workbench取第一个参数的值,并且只保留两个数组中密钥存在的那些:

val extension = if (keepExtension && !FilenameUtils.getExtension(path).isEmpty) s"${FilenameUtils.getExtension(path)}." else ""

答案 1 :(得分:-1)

你可以通过使用PHP array_replace函数来解决这个问题,如果你想改变0数组索引值然后不需要使用数组索引,这段代码将总是改变1索引值。

$orgArray是我的主数组,我正在使用$orgArray数组值更改array [1] $replacementValue索引值。

$orgArray = array("orange", "banana", "apple", "raspberry");
$replacementValue = array(1 => "grape");

$newArray = array_replace($orgArray, $replacementValue);
print_r($newArray);