2015-09-13 27 views
0

我试图从XML文档树中删除的部分10987发现here选择和保存数据从XML文档树

为了呼吁从URL的信息,我一直在用这个代码

$user5 = 'N79079'; 
     $args5['registration'] = $user5; 
     $postdata5 = http_build_query($args5); 
     $heads5 = array(
     'http'=>array(
     'method'=>"POST", 
     'header'=>"servicekey:XXXXXXXXX\r\n" . 
     "Content-type: application/x-www-form-urlencoded\r\n", 
     'content'=>$postdata5 
     ) 
     ); 

     $head_out5 = stream_context_create($heads5); 
     $page5 = file_get_contents('http://server.fseconomy.net/data?userkey=XXXXXXXXXX&format=xml&query=aircraft&search=status&aircraftreg=' . $user5, false, $head_out5); 

这将从链接返回信息。我需要把10987变成一个字符串,以便它可以作为变量添加到另一堆代码中。一堆代码是

$user3 = $ars; 
     $user4 = $ars2; 
     $args3 = array(
     'transferto'=>$user4, 
     'serialnumber'=>$VARIABLE I AM TRYING TO CREATE FROM ABOVE, 
     'note'=>'This is a note' 
     ); 
     $postdata3 = http_build_query($args3); 
     $heads3 = array(
     'http'=>array(
     'method'=>"POST", 
     'header'=>"servicekey:XXXXXXXXX\r\n" . 
     "Content-type: application/x-www-form-urlencoded\r\n", 
     'content'=>$postdata3 
     ) 
     ); 

     $head_out3 = stream_context_create($heads3); 
     $page3 = file_get_contents('http://server.fseconomy.net/rest/api/aircraft/transfer/' . $user3, false, $head_out3); 
     $data3 = json_decode($page3, TRUE); 
     print_r ($data3); 

此代码使用先前由用户填写的表单发送的数据。我需要这样做,以便serialnumber中使用的变量能够被我打电话给的REST API读取。

希望我没有让这太混乱。总而言之,我只是试图从上面链接的XML文档树中移除一个结果,然后将其作为我可以在serialnumber字段中使用的变量。 'X取代了我的服务和用户密钥,但它们在我的代码中是正确的。谢谢!

回答

0

PHP有许多用于解析XML/HTML的解析器。以下是如何使用SimpleXML获取序列号的示例。这也使用__toString将它从一个对象转换为字符串http://php.net/manual/en/language.oop5.magic.php

<?php 
$user5 = 'N79079'; 
     $args5['registration'] = $user5; 
     $postdata5 = http_build_query($args5); 
     $heads5 = array(
     'http'=>array(
     'method'=>"POST", 
     'header'=>"servicekey:XXXXXXXXX\r\n" . 
     "Content-type: application/x-www-form-urlencoded\r\n", 
     'content'=>$postdata5 
     ) 
     ); 

     $head_out5 = stream_context_create($heads5); 
     $page5 = file_get_contents('http://server.fseconomy.net/data?userkey=XXXXXXXXXX&format=xml&query=aircraft&search=status&aircraftreg=' . $user5, false, $head_out5); 
     $sxml = new Simplexmlelement($page5); 
     $snumber = $sxml->Aircraft->SerialNumber->__toString(); 
     var_dump($snumber); 

输出:

string(5) "10987" 
+0

精美的作品就像我想让它。非常感谢! –