gpt4 book ai didi

php - 从条件中删除关联数组中的特定键

转载 作者:行者123 更新时间:2023-12-02 04:42:16 27 4
gpt4 key购买 nike

我遇到了一种编码情况,在这种情况下我希望尽可能保持某个条件紧凑:

// $data and $control are arrays
if($data==$control || ($someBool && $data==$control))
return $c;

当然,这种情况没有任何意义。我的目标是在条件的最后部分从 $control 中删除一个键,然后再将它与 $data 进行比较。

当然也可以这样做:

function chopByKey(array $arr, $key){
if(!isset($arr[$key]))
return $arr;
unset($arr[$key]);
return $arr;
}

并重写条件:

if($data==$control || ($someBool && $data==chopByKey($control, 'someKey') ))
return $c;

请注意

我正在寻找一种可以在我的条件下使用的解决方案,而不是任何需要条件的任何额外步骤提前的解决方案或自定义函数的定义,无论是否匿名。

我的问题是

有没有更优雅的方法来做到这一点,而无需定义新的自定义函数?

如果是,怎么办?

最佳答案

我想出了下面一行:

$control = array('hello' => 'world', 'foo' => 'bar');
$data = array('hello' => 'world');
$someBool = true;

if ($data == $control || $someBool && $data == array_diff_key($control, array('foo' => 0))) {

副作用是 $control 没有被条件修改。

关于php - 从条件中删除关联数组中的特定键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20588888/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com