Ich habe versucht, Web-Image zu lokal zu speichern, ich benutze Code hier, um einen Richter zu machen, wenn der Name der Bilddatei nicht .jpg, .jpeg, .png oder .gif ist, füge sie hinzu. Ich benutze stripos
, aber ich treffe einige Probleme, wenn eine Bild-URL wie folgt. So, wie zu lösen? Vielen Dank.php überprüfen, ob der Name einer Bilddatei nicht .jpg, .jpeg, .png oder .gif ist.
$webimage = 'http://pcdn.500px.net/5953805/d0dd841969187f47e8ad9157713949b4b95b3bda/4.jpg?1333782904356';
$pieces = explode("/", $webimage);
$pathend = end($pieces);
$imageinfo = @getimagesize($webimage);
$imagetype= $imageinfo['mime'];
if($imagetype=='image/jpeg'){
if(stripos($pathend,'.jpg')==0){
$newpathend = $pathend.'.jpg'; // if image end is't '.jpg', add '.jpg'
}else if(stripos($pathend,'.jpeg')==0){
$newpathend = $pathend.'.jpeg'; // if image end is't '.jpg', add '.jpeg'
}else{
$newpathend = $pathend;// if image end is '.jpg' or '.jpeg', do not change
}
}
if($imagetype=='image/png'){
if(stripos($pathend,'.png')==0){
$newpathend = $pathend.'.png'; // if image end is't '.png', add '.png'
}else{
$newpathend = $pathend;// if image end is '.png', do not change
}
}
if($imagetype=='image/gif'){
if(stripos($pathend,'.gif')==0){
$newpathend = $pathend.'.gif'; // if image end is't '.gif', add '.gif'
}else{
$newpathend = $pathend;// if image end is '.gif', do not change
}
}
nur weil ein Dateiname in .jpg endet es nicht eine JPEG-Datei, besser den Mime-Typen zu überprüfen. –