php数组递归函数返回值,PHP:从递归函数返回一个数组

我有一个像这样的数组:

SimpleXMLElement Object

(

[BrowseNodes] => SimpleXMLElement Object

(

[BrowseNode] => SimpleXMLElement Object

(

[BrowseNodeId] => 969391031

[Name] => Bambine e ragazze

[Children] => SimpleXMLElement Object

(

[BrowseNode] => Array

(

[0] => SimpleXMLElement Object

(

[BrowseNodeId] => 969394031

[Name] => Calze

)

[1] => SimpleXMLElement Object

(

[BrowseNodeId] => 3635837031

[Name] => Felpe

)

[2] => SimpleXMLElement Object

(

[BrowseNodeId] => 3635838031

[Name] => Giacche

)

[3] => SimpleXMLElement Object

(

[BrowseNodeId] => 3635839031

[Name] => Guanti da giocatore

)

[4] => SimpleXMLElement Object

(

[BrowseNodeId] => 969392031

[Name] => Maglie

)

[5] => SimpleXMLElement Object

(

[BrowseNodeId] => 4351854031

[Name] => Maglie per tifosi

)

[6] => SimpleXMLElement Object

(

[BrowseNodeId] => 3635840031

[Name] => Magliette da portiere

)

[7] => SimpleXMLElement Object

(

[BrowseNodeId] => 969393031

[Name] => Pantaloncini

)

[8] => SimpleXMLElement Object

(

[BrowseNodeId] => 3635841031

[Name] => Pantaloncini da portiere

)

[9] => SimpleXMLElement Object

(

[BrowseNodeId] => 3635842031

[Name] => Pantaloni

)

[10] => SimpleXMLElement Object

(

[BrowseNodeId] => 3635843031

[Name] => Tute da ginnastica

)

)

)

[Ancestors] => SimpleXMLElement Object

(

[BrowseNode] => SimpleXMLElement Object

(

[BrowseNodeId] => 969386031

[Name] => Abbigliamento

[Ancestors] => SimpleXMLElement Object

(

[BrowseNode] => SimpleXMLElement Object

(

[BrowseNodeId] => 937258031

[Name] => Calcio

[Ancestors] => SimpleXMLElement Object

(

[BrowseNode] => SimpleXMLElement Object

(

[BrowseNodeId] => 524013031

[Name] => Categorie

[IsCategoryRoot] => 1

[Ancestors] => SimpleXMLElement Object

(

[BrowseNode] => SimpleXMLElement Object

(

[BrowseNodeId] => 524012031

[Name] => Sport e tempo libero

)

)

)

)

)

)

)

)

)

)

)

我需要做的是使用Anchestors构建一个面包屑.列表末尾的那个应该是第一个.所以,作为一个例子:

Sport e tempo libero>分类> CALCIO …

我试图用这种方式迭代xml而没有成功:

$rec=$result->BrowseNodes->BrowseNode->Ancestors->BrowseNode;

$bread=array();

function recursive($r)

{

do{

$bread[]=$r->BrowseNodeId;

recursive($r->Ancestors->BrowseNode);

}while(isset($r->Ancestors));

$bread=array_reverse($bread);

return $bread;

}

print_r(recursive($rec));

我在stackoverflow上发现了类似的东西,但没有任何建议帮助我解决这个问题.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值