Einzelnen Beitrag anzeigen
  #8  
Alt 27.04.2009, 19:13:55
Damir Damir ist offline
Administrator
 
Registriert seit: Jan 2002
Ort: Köln
Alter: 53
Beiträge: 1.276
AW: Performance verbessern

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($fpCURLOPT_RETURNTRANSFER1); 
    
    
// TRUE um jedem "Location: "-Header zu folgen, den der Server als Teil der HTTP-Header zurückgibt.
    
curl_setopt($fpCURLOPT_FOLLOWLOCATION1);
    
    
// Wieviel Header er max. folgen soll - gibt man es nicht an sind es max. 20
    
curl_setopt($fpCURLOPT_MAXREDIRS30);    
    
    
    
    
// 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
)
__________________
Qozido - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.

www.qozido.de
Mit Zitat antworten