我的阵列中有一块:
[0] => stdClass Object
(
[id] => 8005
[parentid] => 8004
[name] => a, b
[level] => 1
[prodtypename] => 1, 2, 3, 4
)
[1] => stdClass Object
(
[id] => 8006
[parentid] => 8005
[name] => c
[level] => 2
[prodtypename] =>
)
[2] => stdClass Object
(
[id] => 8007
[parentid] => 8005
[name] => d
[level] => 2
[prodtypename] =>
)
在我的表单中,我将其显示为:
<?php foreach ($this->myArray as $item): ?>
<?php echo $item->prodtypename ?>
它显示当前类别及其当前类型。我需要在子类型旁边显示父“prodtypename”,因此我们可以知道当前子类别的父类型是什么。我试图使显示看起来像这样:
[1] => stdClass Object
(
[id] => 8006
[parentid] => 8005
[name] => c
[level] => 2
[prodtypename] => 1,2,3,4
)
因为父母“prodtypename”有1.2.3.4,所以孩子继承了它。感谢。
答案 0 :(得分:0)
基于数组你已经有这样的事情可能会有所作为,假设你可以依赖父母总是出现在他们孩子面前的数组中:
$prodTypeNames = array();
foreach ($this->myArray as $item) {
$prodTypeName = $item->prodtypename;
if( is_null( $item->prodtypename ) && isset( $prodTypeNames[$item->parentid] ) ) {
$prodTypeName = $prodTypeNames[$item->parentid];
}
$prodTypeNames[$item->id] = $prodTypeName;
echo $prodTypeName;
}
但是你可能最好以更好的格式获取数据。