CURLOPT_FILE在WAMP而不是LAMP上工作

时间:2013-02-27 00:15:31

标签: php json curl

我对PHP和curl有点新。我在本地机器上的WAMP中设置了一个脚本。它将执行curl并将结果保存到.csv文件。这个相同的curl脚本不适用于最近为我设置的LAMP开发环境。相反,生成的JSON将在浏览器中打印。我需要在LAMP堆栈中启用某种php扩展吗?这是代码:

$reportfileurl = 'https://www.googleapis.com/analytics/sampleurl';
$path = 'temp/temp.csv';
 $fp = fopen($path, 'w');
 $request = curl_init();
 curl_setopt($request, CURLOPT_URL, $reportfileurl);
 curl_setopt($request, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
 curl_setopt($request, CURLOPT_HTTPHEADER, array($authorization_header));
 //curl_setopt($request, CURLOPT_RETURNTRANSFER, TRUE);
 curl_setopt($request, CURLOPT_FILE, $fp);
 curl_setopt($request, CURLOPT_SSL_VERIFYPEER, TRUE);
 curl_setopt($request, CURLOPT_SSL_VERIFYHOST, 2);
 curl_setopt($request, CURLOPT_CAINFO, getcwd() . "/CAcerts/BuiltinObjectToken-EquifaxSecureCA.crt");
 $report_file = curl_exec($request);
 curl_close($request);
 fclose($fp);

另一方面,由于curl请求返回JSON我知道我需要解码它才能将内容保存为csv。我发现了一些关于如何从JSON对象创建数组的帖子,但我似乎无法在数组中引用JSON对象内的内容,所以我想知道问题的一部分是否与卷曲处理?

1 个答案:

答案 0 :(得分:0)

冷却。我想出了如何使用户组具有将文件/文件夹添加到/ var / www的权限,然后我将apache2用户'www-data'添加到组中。这里的内容

https://serverfault.com/questions/6895/whats-the-best-way-of-handling-permissions-for-apache2s-user-www-data-in-var

我现在能够将.csv写入服务器。现在我只需要将JSON解码为实际的逗号分隔值!