Php 来自多个XML的同一变量

Php 来自多个XML的同一变量,php,xml,variables,Php,Xml,Variables,假设我从两个不同的XML文件中获取变量,在第一个XML文件中 $var1 = new SimpleXMLElement('CSVXML/xvar.xml', null, true); $var2 = new SimpleXMLElement('CSVXML/yvar.xml', null, true); 这可能吗 我只想输出一个变量,它是XML的B从XML2中,是否有可能做到这一点?我发现这很好。测试 InternalNumber.-“$varnumber.\n”; if((int)$this

假设我从两个不同的XML文件中获取变量,在第一个XML文件中

$var1 = new SimpleXMLElement('CSVXML/xvar.xml', null, true);
$var2 = new SimpleXMLElement('CSVXML/yvar.xml', null, true);
这可能吗


我只想输出一个变量,它是XML的B从XML2中,是否有可能做到这一点?

我发现这很好。测试

InternalNumber.-“$varnumber.\n”;
if((int)$this_number==(int)$varnumber){
$this_internalnumber=$item->internalnumber;
echo$this\u internalnumber.“\n”;
}
否则{
回显“未找到匹配项\n”;
}
}

希望这有帮助

“我这样做”。那么,当你这么做的时候会发生什么?它有用吗?错误?$var1出错,InternalNumber总是给我1,即使我更改了变量,你是否错过了for循环?这就是为什么每次都会得到第一个结果,即3698的内部编号1<代码>打印($var1)并检查数组。
<Number>3698</Number>
<InternalNumber>1</InternalNumber>
<Name>Bob</Name>
<Number>3500</Number>
<InternalNumber>2</InternalNumber>
<Name>Mike</Name>
<Number>2775</Number>
<InternalNumber>3</InternalNumber>
<Name>Dan</Name>
<player>3698</player>
<group>A</group>
$varID = $var1->Number;
$varnumber = $var2->player;

if ($varID == $varnumber ){
    echo '$var1->InternalNumber';
}
<?php
$str = <<<XML
<items>
<item>
<Number>3698</Number>
<InternalNumber>1</InternalNumber>
<Name>Bob</Name>
</item>
<item>
<Number>3500</Number>
<InternalNumber>2</InternalNumber >
<Name>Mike</Name>
</item>
<item>
<Number>2775</Number>
<InternalNumber>3</InternalNumber>
<Name>Dan</Name>
</item>
</items>
XML;

$str2 = <<<XML
<item>
<player>3698</player>
<group>A</group>
</item>
XML;

$da = new SimpleXMLElement($str2);
$varnumber = $da->player; 

$data = new SimpleXMLElement($str);
foreach ($data->item as $item)
{

   $this_number = $item->Number;
   //echo $this_number."-".$item->InternalNumber."-".$varnumber."\n";
   if((int)$this_number == (int)$varnumber ){
   $this_internalnumber = $item->InternalNumber;
    echo $this_internalnumber."\n";
     }
     else{
     echo "No Match found \n";
     }
 }