2016-08-26 5 views
0

Ich habe mehrere URLs in meiner Datenbank und will sie treffen, ohne Antwort mit PHP.Hit mehrere URL ohne Antwort in PHP

ist es eine Möglichkeit, dies zu tun ..

+0

Sie können das tun in welcher Sprache Sie können sich vorstellen, dass in diesen Tagen auf den Servern läuft - aber wenn Ihr Server PHP und nothign läuft anders als Ihre Auswahl ist begrenzt auf diese eine Sprache –

+1

Ich möchte Urls von Back-End-Hit mit mit Hilfe der Datenbank –

Antwort

1
public function multiUrlUsingCurl($urls) 
{ 
     $sg = curl_multi_init(); 

     $results = array(); 
     foreach ($urls as $key => $url) { 

      $results[$key] = curl_init(); 
      curl_setopt_array($results[$key], array(
       CURLOPT_URL => $url, 
       CURLOPT_RETURNTRANSFER => true, 
       CURLOPT_FOLLOWLOCATION => true 
      )); 

      curl_multi_add_handle($sg, $results[$key]); 
     } 

     $flag = null; 
     do { 
      $status = curl_multi_exec($sg, $flag); 
     } 
     while ($flag); 

     foreach ($results as $res) { 
      echo curl_multi_getcontent($res); 
      curl_multi_remove_handle($sg, $res); 
      curl_close($res); 
     } 

     curl_multi_close($sg); 
} 
0

Dann haben Sie Ihre Einträge in einer Datei zu speichern, entweder als ASCII-Format oder serialisierte Zeichenfolge wie json oder man könnte es als XML speichern. Aber ich schlage vor, Sie speichern es wie eine JSON-Zeichenfolge. Es ist ziemlich einfach.

EDIT:

Ein kurzer Schnipsel zu erleichtern Ihnen den Einstieg:

function getUrlList($fileName) 
{ 
    if(file_exists($fileName)) { 
     return json_decode(file_get_contents($fileName), true); 
    } 
    return array(); 
} 

function saveUrl($fileName, $newUrl) 
{ 
    if(file_exists($fileName)) { 
     $list = json_decode(file_get_contents($fileName), true); 
     $list = array_merge($list, $newUrl); 
     file_put_contents($fileName, json_encode($list)); 
     return true; 
    } 
    return false; 
} 

$fileName = 'myFileDB.json'; 
$UrlToSave = array('id' => uniqid(), 'url' => someUrlYouWantToSave); 
saveUrl($fileName, $urlToSave); // To save Url 

// To get List 
$urlsList = getUrlList($fileName); 

Von dort können Sie die Funktionalität erweitern die URLs zu bearbeiten oder andere Aktionen haben, um Daten zu manipulieren. Sie müssen auch sicherstellen, dass Sie eine leere JSON-Zeichenfolge in der Datei haben, in die Sie die URL speichern möchten. Entweder schreibst du eine Logik, oder mach einfach {} in eine Datei.

+1

Was wird als nächstes nach dem Speichern von Einträgen in einer Datei ?? bitte erkläre –