Ich hab mal das Unnötige was Du nicht brauchst aus unserer Function heraus geschmissen und für Dich einige Parameter gesetzt - den Rest musst Du selber nach belieben anpassen:
PHP-Code:
<?PHP
function curlStart($domain){
$fp = curl_init($domain);
// Maximale Ausfuehrungszeit
curl_setopt($fp,CURLOPT_TIMEOUT,20);
// Durchlauf abbrechen wenn Server mit einem ERROR > 300 antwortet
curl_setopt($fp,CURLOPT_FAILONERROR,1);
// TRUE um den Tranfer als String zurückzuliefern, anstatt ihn direkt auszugeben.
curl_setopt($fp, CURLOPT_RETURNTRANSFER, 1);
// TRUE um jedem "Location: "-Header zu folgen, den der Server als Teil der HTTP-Header zurückgibt.
curl_setopt($fp, CURLOPT_FOLLOWLOCATION, 1);
// Wieviel Header er max. folgen soll - gibt man es nicht an sind es max. 20
curl_setopt($fp, CURLOPT_MAXREDIRS, 30);
// 2009-03-11 20:31:02
$message['start_time'] = date("Y-m-d H:i:s");
$output = curl_exec($fp);
$message['end_time'] = date("Y-m-d H:i:s");
$info = curl_getinfo($fp);
// letzte Fehlermeldung
if(curl_errno($fp) != 0){
$message['curl_errno'] = FALSE;
$message['curl_error'] = curl_error($fp);
}
else{
$message['curl_errno'] = TRUE;
$message['curl_error'] = "+OK";
}
$message['http_code'] = $info['http_code'];
$message['total_time'] = $info['total_time'];
//$message['output'] = $output;
$message['namelookup_time'] = $info['namelookup_time'];
$message['connect_time'] = $info['connect_time'];
$message['pretransfer_time'] = $info['pretransfer_time'];
$message['starttransfer_time'] = $info['starttransfer_time'];
$message['redirect_count'] = $info['redirect_count'];
$message['redirect_time'] = $info['redirect_time'];
curl_close($fp);
return $message;
}
print_r(curlStart("http://www.selfphp.de"));
?>
Bei SELFPHP kam gerade z.B. das heraus:
Code:
Array
(
[start_time] => 2009-04-27 19:10:23
[end_time] => 2009-04-27 19:10:23
[curl_errno] => 1
[curl_error] => +OK
[http_code] => 200
[total_time] => 0.031759
[namelookup_time] => 0.008693
[connect_time] => 0.008779
[pretransfer_time] => 0.008823
[starttransfer_time] => 0.020082
[redirect_count] => 0
[redirect_time] => 0
)