从对象数组的成员创建数组 [英] create array from members of an array of objects
问题描述
你好,
我有以下情况:
$ list []是MyElement对象的数组。
MyElement有两个成员:MyElement-> member1; MyElement-> member2;
我想要的是获得以下内容:
$ newlist []以便:
$ newlist [0] = $ list [0] - > member2;
$ newlist [1] = $ list [1] - > member2;
$ newlist [2] = $ list [2] - > member2;
....
我需要做的事使用单行代码。
有可能吗?怎么做?
我尝试过:
array_walk($ list,create_function(''$ a,$ b,$ result) '',''$ result [] =
$ a-> member2;''),& $ result);
但我得到了以下错误:
警告:已弃用调用时传递引用 - 参数
按值传递;如果您想通过引用传递它,请修改array_walk()的
声明。如果您想启用呼叫时间
传递引用,您可以将
中的allow_call_time_pass_reference设置为真INI文件。但是,未来版本可能不再支持此了。
谢谢
问候
Hello,
I have the following situation:
$list[] is an array of MyElement objects.
MyElement has two members: MyElement->member1; MyElement->member2;
What I want is to get the following:
$newlist[] so that:
$newlist[0]=$list[0]->member2;
$newlist[1]=$list[1]->member2;
$newlist[2]=$list[2]->member2;
....
I need to do this using A SINGLE LINE OF CODE.
Is it possible? How to do this?
I tried with:
array_walk($list,create_function(''$a,$b,$result'','' $result[] =
$a->member2;''), &$result);
but I get the following error:
Warning: Call-time pass-by-reference has been deprecated - argument
passed by value; If you would like to pass it by reference, modify the
declaration of array_walk(). If you would like to enable call-time
pass-by-reference, you can set allow_call_time_pass_reference to true in
your INI file. However, future versions may not support this any longer.
Thank you
Regards
推荐答案
list []是MyElement对象的数组。
MyElement有两个成员:MyElement-> member1; MyElement-> member2;
我想要的是获得以下内容:
list[] is an array of MyElement objects.
MyElement has two members: MyElement->member1; MyElement->member2;
What I want is to get the following:
newlist [] so那:
newlist[] so that:
newlist [0] =
newlist[0]=
这篇关于从对象数组的成员创建数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!