Ben buldum aşağıdaki php kodu var here:
function download_xml()
{
$url = 'http://tv.sygko.net/tv.xml';
$ch = curl_init($url);
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$data = curl_exec($ch);
echo("curl_exec was succesful"); //This never gets called
curl_close($ch);
return $data;
}
$my_file = 'tvdata.xml';
$handle = fopen($my_file, 'w');
$data = download_xml();
fwrite($handle, $data);
Ne yapmaya çalışıyorum belirtilen url xml indirmek ve diske kaydetmek için. Ancak, bu kez yaklaşık% 80 bitmiş durur ve curl_exec
çağrısından sonra echo
çağrıyı asla ulaşır. Ben neden emin değilim, ama bellek biterse bu olduğuna inanıyorum. Bu nedenle ben kıvırmak indirildiğinde her zaman 4kb söylemek dosyaya veri yazmak yapmak mümkün olup olmadığını sormak istiyorum. Bu mümkün değilse, herkes url depolanan xml dosya indirilen ve php kullanarak benim diskte saklanan almak için bir yol biliyor musunuz?
Thank you very much, BEN.
EDIT: This is the code now, it doesnt work. It writes the data to the file but still only about 80% of the document. Maybe it isn't because it exceeds memory but some other reason? I really can't believe it is this hard to copy a file from a URL to the disc...
<?
$url = 'http://tv.sygko.net/tv.xml';
$my_file = fopen('tvdata.xml', 'w');
$ch = curl_init($url);
$timeout = 300;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FILE, $my_file);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_BUFFERSIZE, 4096);
curl_exec($ch) OR die("Error in curl_exec()");
echo("got to after curl exec");
fclose($my_file);
curl_close($ch);
?>