通过curl(命令行)发布XML而不使用键/值对

时间:2010-05-16 19:38:16

标签: php xml post curl

考虑输出所有POST数据的PHP脚本,如下所示:

<?php var_dump($_POST); ?>

该脚本位于http://example.com/foo.php

现在,我想使用命令行curl将XML数据发布到它(不使用键/值对)。我尝试了以下几种变体:

curl -H "Content-type: text/xml; charset=utf-8" --data-urlencode "<foo><bar>bazinga</foo></bar>" http://example.com/foo.php

然而,他们似乎都没有发布任何内容 - 根据PHP脚本,$_POST只是一个空数组。

我在这里做错了什么?

1 个答案:

答案 0 :(得分:2)

(免责声明:我对PHP的熟悉程度很高,而且很古老。)

我相信$ _POST仅在PHP可以将输入解析为普通键/值对时才有效。您需要直接访问原始POST数据。这可能很有用:

http://www.codediesel.com/php/reading-raw-post-data-in-php/