为了账号安全,请及时绑定邮箱和手机立即绑定

在 PHP 中使用其自己的属性重命名对象键

在 PHP 中使用其自己的属性重命名对象键

PHP
明月笑刀无情 2024-01-19 14:59:21
我在 PHP 中有一个这样的对象-array(2) {  [0]=>  object(stdClass)#1869 (10) {    ["id"]=>    string(1) "1"    ["country"]=>    string(7) "Austria"    ["cat_one"]=>    string(7) "#FFCB69"  }  [1]=>  object(stdClass)#1868 (10) {    ["id"]=>    string(1) "2"    ["country"]=>    string(7) "Belgium"    ["cat_one"]=>    string(7) "#FFCB69"  }}我想获取国家/地区属性并将其设置为根对象中每个值的键。foreach 会重置每个键上的整个对象值。预期结果类似于下面的结果 -array(2) {  [Austria]=>  object(stdClass)#1869 (10) {    ["id"]=>    string(1) "1"    ["cat_one"]=>    string(7) "#FFCB69"  }  [Belgium]=>  object(stdClass)#1868 (10) {    ["id"]=>    string(1) "2"    ["cat_one"]=>    string(7) "#FFCB69"  }}
查看完整描述

1 回答

?
繁星淼淼

TA贡献1775条经验 获得超11个赞

由于array_column可以从作为数组元素的对象中提取公共属性,因此您可以:


$array = []; // your initial array

print_r(

    array_combine(

        // extract country property from each object

        array_column($array, 'country'), 

        $array

    )

);

但此方法不会删除 country每个对象的属性。


查看完整回答
反对 回复 2024-01-19
  • 1 回答
  • 0 关注
  • 26 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信