Php Can';我不能真正理解simpleXML中的children()

Php Can';我不能真正理解simpleXML中的children(),php,xml,Php,Xml,我正在做一个简单的opencalais项目,我需要我的程序来动态实现儿童计数的类别 我打算编写一个单独的函数,它将处理子孩子,如果他们像示例中那样出现。(多个公司/个人/等)但似乎该代码已解决了所有问题。这真的是一件好事,因为它为我节省了一些工作。但我对PHP是新手,我已经阅读了children()文档,但不明白这是怎么发生的 守则: $xml = simplexml_load_string("$response"); print_fr($xml); $categories = $xml-&g

我正在做一个简单的opencalais项目,我需要我的程序来动态实现儿童计数的类别

我打算编写一个单独的函数,它将处理子孩子,如果他们像示例中那样出现。(多个公司/个人/等)但似乎该代码已解决了所有问题。这真的是一件好事,因为它为我节省了一些工作。但我对PHP是新手,我已经阅读了children()文档,但不明白这是怎么发生的

守则:

$xml = simplexml_load_string("$response");
print_fr($xml);

$categories = $xml->CalaisSimpleOutputFormat->children();
print_fr($categories);

foreach( $categories as $entities ) {
    $eName = $entities->getName();
    if($eName!== "Topics") {
        echo "<br /> The Entity is -- \" ".$eName."\"";
        echo "<br /> The Entity Name is -- \" ".$entities."\"";
        echo "<br /> The Relevance Score is -- \" ".$entities['relevance']."\"";
    }
    else if($eName == "Topics") {
        echo "Deal with topics later";
    }
}

查看xml文件,但也要了解数组的工作原理

发生的情况是,数据被分组到CalaisSimpleOutputFormat中的数组中

    $xml = simplexml_load_string('
<CalaisSimpleOutputFormat> 
   <Company>company 1</Company> 
   <event>event 1</event> 
   <Company>company 2</Company> 
   <event>event 2</event> 
 </CalaisSimpleOutputFormat> 
 ');

$CalaisSimpleOutputFormat = $xml->children();

foreach($xml  as $cat_name=>$data_in_cat ){ 

   echo $cat_name.' '.$data_in_cat.'<br/>'; 

 }
$xml=simplexml\u load\u字符串('
第一公司
事件1
公司2
事件2
');
$CalaisSimpleOutputFormat=$xml->children();
foreach($cat\u name=>data\u in\u cat中的$xml){
echo$cat_name.'.$data_in_cat.
; }
[公司][0] [活动][0]

[公司][1] [活动][1]


以此类推,“$response”创建一个新字符串,将$response粘贴到其中,然后将新字符串传递到函数中。。。引用是完全没有必要的。嗨,马克,我的PHP经验是几天的,现在我只是为了安全。谢谢你的意见。没有人真正理解他们的孩子。这就是生活。非常感谢你的回答。从不知道分组过程。
    $xml = simplexml_load_string('
<CalaisSimpleOutputFormat> 
   <Company>company 1</Company> 
   <event>event 1</event> 
   <Company>company 2</Company> 
   <event>event 2</event> 
 </CalaisSimpleOutputFormat> 
 ');

$CalaisSimpleOutputFormat = $xml->children();

foreach($xml  as $cat_name=>$data_in_cat ){ 

   echo $cat_name.' '.$data_in_cat.'<br/>'; 

 }