我想对一个引用另一个数组中属性位置的数组进行排序 .
$referenceArray = ['red', 'green', 'blue'];
$testArray = [obj1, obj2, obj3, obj4];
foreach($testArray as $object) {
if($object->colour === "red") {
// push to TOP of array
} elseif($object-color == "green") {
// push to MIDDLE of array
} elseif($object->color === "blue") {
// push to BOTTOM o array
}
}
这可能是使用内置的PHP排序方法吗?或者它只能完成,例如我上面有伪编码 .
亲切的问候
1 回答
由于您在数组中有对象,因此除非您愿意将对象强制转换为数组,否则您无法真正使用除_7936之外的任何内置方法:
这个想法是:当比较对象$ x和对象$ y时,从
$referenceArray
获取$x
和$y
的颜色索引并返回这些索引的比较 .