PHP 从单个 stdClass 对象数组中的关联数组获取/检查值

PHP Get / check value from associative array in array of individual stdClass Objects

对此有实际问题。我希望能够从通过 API.

返回的数据中获取一个值

即通过

获得价值
$CM_user_customfields['Organisation'],   
$CM_user_customfields->Organisation.

这可能吗?我已经尝试过循环和重建数组,但我总是得到类似的结果,也许我想多了。

我不能使用 [int] => 因为自定义字段的数量会发生很大变化。

$CM_user_customfields =  $CM_details->response->CustomFields ;
echo '<pre>' . print_r( $CM_user_customfields, true ) . '</pre>';

// returns
Array
(
    [0] => stdClass Object
        (
            [Key] => Job Title
            [Value] => Designer / developer
        )

    [1] => stdClass Object
        (
            [Key] => Organisation
            [Value] => Jynk
        )

    [2] => stdClass Object
        (
            [Key] => liasoncontact
            [Value] => Yes
        )

    [3] => stdClass Object
...

非常感谢,D.

我建议首先转换为关联数组:

foreach($CM_user_customfields as $e) {
    $arr[$e->Key] = $e->Value;
}

现在您可以通过以下方式访问它:

echo $arr['Organisation'];

您也可以通过以下方式实现它:(PHP 7 可以转换 stdClass 并且可以做到这一点)

$arr = array_combine(array_column($CM_user_customfields, "Key"), array_column($CM_user_customfields, "Value")));