我怀疑我是否可以将包含文件链接的数组传递给 curl 循环以创建单个循环,而不是每次我需要上传文件内容时,复制并粘贴具有不同文件名的相同 curl 调用.
这是我编写的将单个文件上传到服务器的代码。我为每个文件复制并粘贴相同的代码,这样一切正常,但我想了解如何创建一个循环给“$data = array('file'=>$fn);” 包含所有文件内容的循环,并在调用函数“file_get_contents($fn)”时自动执行一个函数中的所有调用。
//file to upload
$fn = ("fn.rdf");
//curl loop to upload single file
$data = array('file'=>$fn);
$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/rdf+xml'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, 'http://www.example.com/index.php?update=true');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, file_get_contents($fn));
curl_exec($ch);
$info = curl_getinfo($ch); var_dump($info);
$result = curl_exec($ch);
if ($result === false) {
die(curl_error());
}else{
echo "<br>"."upload ok"."<br>";
}
谢谢!
编辑:嗨,我再次有疑问。如果我想将该脚本用作函数以将其方法调用到另一个脚本中,该脚本逐篇阅读文章,那么我必须将 function updateContent(){}
调用方法放入另一个脚本中updateContent()
?正如我已经说过的, $fn 包含一个带有文件列表的数组。如果我想调用updateContent()
创建但仅针对特定的 file1.rdf 是否正确使用该命令updateContent($files['0']);
调用仅为元素 0(对应于提到的数组的 file1.rdf)指定的方法来更新它的状态?