2016-05-02 10 views
1

Ich habe einen Code für das Download Bild von externer URL.Datei nicht gefunden in externe URL

$content = file_get_contents("http://shoecompany.in/wp-content/uploads/2015/06/new.jpg"); 

$fp = fopen("assets/img/image.jpg", "w"); 
fwrite($fp, $content); 
fclose($fp); 

Wenn Bild nicht in externer URL verfügbar ist, dann möchte ich eine Fehlermeldung anzeigen. Also was tue ich?

Antwort

1
if(@$content = file_get_contents("http://shoecompany.in/wp-content/uploads/2015/06/new.jpg") !== false){ 
     $content; 
     //Store in the filesystem. 
     $fp = fopen("assets/img/image.jpg", "w"); 
     fwrite($fp, $content); 
     fclose($fp); 
    }else{ 
     echo "error"; 
    } 
0

Versuchen Sie es mit, wenn die Bedingung

if(file_get_contents("http://shoecompany.in/wp-content/uploads/2015/06/new.jpg")) 
{ 
$content = file_get_contents("http://shoecompany.in/wp-content/uploads/2015/06/new.jpg"); 

$fp = fopen("assets/img/image.jpg", "w"); 
fwrite($fp, $content); 
fclose($fp); 
} 
else 
{ 
...Some content to display 

}

+1

eine sehr langsame Performance-Lösung;) –

2

file_get_contents

Die Funktion die gelesenen Daten oder FALSE bei einem Fehler zurückgibt.

So können Sie Ihre Fehler als

$content = file_get_contents("http://shoecompany.in/wp-content/uploads/2015/06/new.jpg"); 
if ($content === FALSE) {// check here 
// handle error here... 
} else { 
    $fp = fopen("assets/img/image.jpg", "w"); 
    if ($fp) {// fopen check here 
     fwrite($fp, $content); 
     fclose($fp); 
    } else { 
     // handle error here... 
    }  
} 
1

Diese Funktion Rückgabedatei bei String überprüfen und bei einem Fehler wird false zurückgegeben. Funktion Boolean FALSE zurück, sondern kann auch ein nicht-boolean das ist zurückgeben, warum Sie verwenden müssen „===“

 $result=file_get_contents("http://shoecompany.in/wp-content/uploads/2015/06/new.jpg"); 

    if ($result === false) 
    { 
     print "Not Found. You Can handle error here"; 
    } 
    else 
    { 
     print " handle good case "; 
    }