结合数组和std类的PHP
这是我想要的,但我不知道怎么做 $a是这个数组 PHP代码:结合数组和std类的PHP,php,arrays,class,std,Php,Arrays,Class,Std,这是我想要的,但我不知道怎么做 $a是这个数组 PHP代码: Array ( [0] => stdClass Object ( [id] => i1 [cat] => Test1 ) [1] => stdClass Object ( [id] => i2 [cat] => Test
Array
(
[0] => stdClass Object
(
[id] => i1
[cat] => Test1
)
[1] => stdClass Object
(
[id] => i2
[cat] => Test2
)
[2] => stdClass Object
(
[id] => i3
[cat] => Test3
)
[3] => stdClass Object
(
[id] => i4
[cat] => Test4
)
}
这是数组,它具有与之关联的std类。我要做的是将所有“cat”名称合并到一个数组变量中
我想让$categories成为一个数组,所有这些“cat”作为数组值
我该怎么做呢?只需循环并创建一个新数组
<?php
$newArray = array();
foreach($a as $cat) {
$newArray[$cat->id] = $cat->cat;
}
var_dump($newArray);
只需循环并创建一个新数组
<?php
$newArray = array();
foreach($a as $cat) {
$newArray[$cat->id] = $cat->cat;
}
var_dump($newArray);
一种简单的方法就是在数组上循环,获取所需的值。还有其他更奇特的方法可以做到这一点,但我喜欢保持简单
$categories = array();
foreach ($a as $obj) {
$categories[] = $obj->cat;
}
当然,如果不是所有数组项都是该对象,那么可能需要检查cat
属性是否存在(并且$obj
是stdClass
!)。一个简单的方法就是在数组上循环,获取所需的值。还有其他更奇特的方法可以做到这一点,但我喜欢保持简单
$categories = array();
foreach ($a as $obj) {
$categories[] = $obj->cat;
}
当然,如果不是所有数组项都是该对象,那么可能需要检查cat
属性是否存在(并且$obj
是stdClass
!)。$categories=array\u map(…);旁注:像function(stdClass$o){…}
这样的匿名函数在5.3之前的php版本中不可用。请参见$categories=array_map(…);旁注:像function(stdClass$o){…}
这样的匿名函数在5.3之前的php版本中不可用。看见