gpt4 book ai didi

php - 如果数组元素未定义,则设置为 null(默认)

转载 作者:行者123 更新时间:2023-12-02 06:49:36 25 4
gpt4 key购买 nike

我有一个函数来填充对象。

public static function populateObj($data) {
$obj = new Obj();
$obj->setVal1($data['val1']);
$obj->setVal2($data['val2']);
$obj->setId($data['id']);
return $obj;
}

如果所有值都用参数 $data 给出,它工作正常。但如果缺少某些内容,则会引发错误。
有没有比这更短、更容易或更好的方法来将 null 设置为默认值:

$data['val1'] ? $obj->setVal1($data['val1']) : $obj->setVal1(null);
...

最佳答案

您可以与默认数组合并,然后 $data 将包含所有这些键:

$data = array_merge(['val1'=>null, 'val2'=>null, 'id'=>null], $data);

在 PHP >= 7.0 中,您可以使用 Null Coalescing Operator :

$obj->setVal1($data['val1'] ?? null);

关于php - 如果数组元素未定义,则设置为 null(默认),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48101112/

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