Beispielanalyse, wie PHP ermittelt, ob lokale und Remote-Dateien vorhanden sind

黄舟
Freigeben: 2023-03-15 19:28:01
Original
1465 Leute haben es durchsucht

In diesem Artikel wird erläutert, wie Sie mithilfe von PHP feststellen können, ob eine Datei vorhanden ist. Er unterstützt die lokale und Remote-Dateibestimmung und bietet vollständigen Aufrufcode und eine Demonstration.

1. Bestimmen Sie, ob die lokale Datei vorhanden ist

Um festzustellen, ob die lokale Datei vorhanden ist, können Sie die Methode file_exists verwenden.

<?php
$file = &#39;test.jpg&#39;;
var_dump(file_exists($file));?>
Nach dem Login kopieren

2. Bestimmen Sie, ob die Remote-Datei existiert

Um festzustellen, ob die Remote-Datei existiert, können Sie nicht die Methode file_exists verwenden, sondern den Header der Datei abrufen Remote-Datei, um festzustellen, ob sie existiert. Falls vorhanden, ist der zurückgegebene HTTP_CODE 200 oder 304.

<?php
// 屏蔽域名不存在等访问问题的警告
error_reporting(E_ALL ^ (E_WARNING|E_NOTICE));
$remote_file = &#39; 
$header = get_headers($remote_file, true);
var_dump(isset($header[0]) && (strpos($header[0], &#39;200&#39;) || strpos($header[0], &#39;304&#39;)));?>
Nach dem Login kopieren

3. Vollständiger Code

<?php/**
 * 判断文件是否存在,支持本地及远程文件
 * @param  String  $file 文件路径
 * @return Boolean
 */function check_file_exists($file){

    // 远程文件
    if(strtolower(substr($file, 0, 4))==&#39;http&#39;){        
    $header = get_headers($file, true);        
    return isset($header[0]) && (strpos($header[0], &#39;200&#39;) || strpos($header[0], &#39;304&#39;));    // 本地文件
    }else{        
    return file_exists($file);
    }

}
// 屏蔽域名不存在等访问问题的警告
error_reporting(E_ALL ^ (E_WARNING|E_NOTICE));
$file1 = &#39;test.jpg&#39;;$file2 = &#39;http://www.csdn.net/css/logo.png&#39;;

var_dump(check_file_exists($file1)); // false
var_dump(check_file_exists($file2)); // true
?>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonBeispielanalyse, wie PHP ermittelt, ob lokale und Remote-Dateien vorhanden sind. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!