在不使用命令行的情况下使用curl,但使用php作为post方法

在不使用命令行的情况下使用curl,但使用php作为post方法,php,curl,Php,Curl,我需要从php执行http post/curl查询,并将结果存储在jsor变量中 在我的文档中,它说有两种方式: 内容类型为“multipart/form data”的HTTP POST请求,其中所有参数都在POST正文中,并且跟踪位于POST“文件”的“跟踪”部分 内容类型为“application/octet stream”的HTTP POST请求,本地文件作为请求主体,URL中的参数 示例帖子: curl-X POST'-d“api_key=xxxxxx&url=” 但是如何在php中

我需要从php执行http post/curl查询,并将结果存储在jsor变量中

在我的文档中,它说有两种方式:

  • 内容类型为“multipart/form data”的HTTP POST请求,其中所有参数都在POST正文中,并且跟踪位于POST“文件”的“跟踪”部分
  • 内容类型为“application/octet stream”的HTTP POST请求,本地文件作为请求主体,URL中的参数
示例帖子:

curl-X POST'-d“api_key=xxxxxx&url=”

但是如何在php中实现这一点呢?我不知道。从我所读到的,我不知道;我不认为curl_init方法会起作用,就像他们在php网站上描述的那样,因为它不是post方法:

$ch = curl_init("http://www.example.com/");
$fp = fopen("example_homepage.txt", "w");

curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);

curl_exec($ch);
curl_close($ch);
fclose($fp);
我欢迎任何关于如何进行的指示。谢谢。

这样怎么样

$post = array(
     "url"=>"path/to/file/example_homepage.txt",
     "api_key"=>"xxxxxx"
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, "http://developer.echonest.com/api/v4/track/upload");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post); 
$response = curl_exec($ch);
根据您可能需要的情况,还有其他选项,如SSL、cookie、用户代理等。。。 这样怎么样

$post = array(
     "url"=>"path/to/file/example_homepage.txt",
     "api_key"=>"xxxxxx"
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, "http://developer.echonest.com/api/v4/track/upload");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post); 
$response = curl_exec($ch);
根据您可能需要的情况,还有其他选项,如SSL、cookie、用户代理等。。。

这可能是重复的,至少你的答案是这个线程的第二个答案。他们的代码类似于标准的php curl方法,但我仍然不知道如何将示例文章转换为我给出的标准php示例。我认为这应该适用于curl,给我一点时间试试这个瓶子靴看起来他有一个很好的答案+1。。。这是另一个线程,其中包含一些我正在研究的好信息。这可能是你的答案的重复,至少是这个线程的第二个答案。它们的代码类似于标准的php curl方法,但我仍然不知道如何将示例文章转换为我给出的标准php示例。我认为这应该与curl一起工作,给我一点时间试试这个瓶子靴看起来他有一个很好的答案+1。。。这里是另一个线程与一些好的信息,我是工作的感谢你的帮助。不幸的是,这在第三行给了我一个错误:Parse error:syntax error,意外的“=”,期望“')啊哈,你文章中的=应该是=>,这修复了它,我现在明白了。非常感谢!我以前不知道如何传递选项。哦,很抱歉,输入错误。修好了。没问题,这就是我们来这里的原因!谢谢你的帮助。不幸的是,这在第三行给了我一个错误:Parse error:syntax error,意外的“=”,期望“')啊哈,你文章中的=应该是=>,这修复了它,我现在明白了。非常感谢!我以前不知道如何传递选项。哦,很抱歉,输入错误。修好了。没问题,这就是我们来这里的原因!