我有这个多维数组$currencies
:
$currencies = array (
0 => (object) array( 'name' => 'algo', 'fullName' => 'Algorand'),
1 => (object) array( 'name' => 'ardr', 'fullName' => 'Ardor'),
2 => (object) array( 'name' => 'eth', 'fullName' => 'Eth')
);
我只想保留带有name
就是这个数组中的:
$filter = ["eth", "algo"];
我这样做了,但它不起作用。
$currenciesFiltered = array_filter(
$currencies,
function ($value) use ($filter) {
return in_array($value['name'], $filter);
}
);
我的错误在哪里?
根据错误输出:
Uncaught Error: Cannot use object of type stdClass as array in [...][...]:13
您将数组转换为对象,但稍后尝试将其用作数组。当您删除(object)
铸造,它的工作原理正如您所期望的那样。
如果必须强制转换为对象,请执行此操作after过滤器。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)