在PHP中从数组中分离一个元素


Detach an element from an array in PHP

有没有办法在PHP中的一行中做到这一点:

if(key_exists('abc', $data)) {
  $newVar = $data['abc'];
  unset($data['abc']); 
}

谢谢!

没有,但您可以为它创建一个函数:

function detach(array &$array, $key) {
    if (!array_key_exists($key, $array)) {
        return null;
    }
    $value = $array[$key];
    unset($array[$key]);
    return $value;
}
$newVar = detach($array, 'abc');

在一行中:

if ($newVar = $data['abc'])  unset($data['abc']);
if(isset($data['abc'))
{
    unset($data['abc']);
}