通过PHP远程url发送XML文件


Sending XML file through PHP remote url

情况如下。我必须将已定义的XML发送到url http:''www.example.com:1234,其中包含一些我之前必须定义的变量。

XML是这样的:

<Title1>
<Title2>Some Text</Title2>
<Title3>Variable 1</Title3>
<Title4>Some Text</Title4>
<Title5>
    <Title51>Variable 2</Title51>
</Title5>
</Title1>

但是,我想在html.php表单和get方法中定义这些变量(1,2),这样用户就可以引入这两个变量,然后单击表单中的提交按钮,将XML发送到以前的URL。

此外,XML应该具有"Content-Type","application/x-www-form-urlencoded"标头。

这可能吗?我已经尝试过将这些变量直接传递给XML,我得到的最好的结果是显示XML,而不是解析php字符串。

此外,我还尝试过一些PHP类中的simplexml之类的脚本,但到目前为止都没有成功。

1)使用新值修改现有XML。试试这个

sample.xml

<Title1>
   <Title2>Some Text</Title2>
   <Title3>Variable 1</Title3>
   <Title4>Some Text</Title4>
   <Title5>
      <Title51>Variable 2</Title51>
   </Title5>
</Title1>

PHP:

$xml = simplexml_load_file("sample.xml");
$xml->Title3 = $_GET['t3'];              // Updating <Title3></Title3> from GET method
$xml->Title5[0]->Title51 = $_GET['t5'];  // Updating <Title51></Title51> from GET method
$xml->asXML('sample.xml');               // saving the xml file

2) 要创建新的XML文件(sample.XML):

PHP:

$xml = new SimpleXMLElement("<Title1></Title1>");
$xml->Title2='Some Text';
$xml->Title3 = $_GET['t3'];
$xml->Title4='Some Text';
$xml->Title5[0]->Title51 = $_GET['t5'];
$xml->asXML('sample.xml');               // saving the xml file

我已经向你展示了评论中提到的两种可能性。使用任何能安慰你的人:)