Heim  >  Artikel  >  Backend-Entwicklung  >  So ermitteln Sie die Größe der Festplattenpartition über die PHP-Dateisystemfunktion

So ermitteln Sie die Größe der Festplattenpartition über die PHP-Dateisystemfunktion

黄舟
黄舟Original
2017-05-20 16:56:283003Durchsuche

So ermitteln Sie die Größe der Festplattenpartition über die PHP-Dateisystemfunktion

Sie können Verzeichnisse und Dateien nicht nur über Dateisystemfunktionen verwalten, sondern auch Erhalten Sie auch verzeichnisbezogene Informationen und prüfen Sie, ob es möglich ist, die Größe der Festplattenpartition zu ermitteln.

Die Funktion disk_total_sapce() wird verwendet, um die Größe der Festplattenpartition zu ermitteln, und die Funktion disk_free_space() wird verwendet, um den verbleibenden Speicherplatz der Festplattenpartition zu ermitteln.

disk_total_space()-Funktion: Ermitteln Sie die Festplattengröße eines Verzeichnisses. Das Syntaxformat lautet wie folgt:

float disk_total_space(string directory)

Diese Funktion gibt das entsprechende Dateisystem oder die entsprechende Festplatte basierend auf einer bereitgestellten Verzeichniszeichenfolge zurück durch das Parameterverzeichnis Die Anzahl der unterschiedenen Bytes.

Hinweis:

Diese Funktion kann nicht auf Remotedateien reagieren und die erkannten Dateien müssen bestehen über den Server Dateisystemzugriff!

disk_free_space()-Funktion: Ermitteln Sie den verfügbaren Speicherplatz eines Verzeichnisses. Das Syntaxformat lautet wie folgt:

float disk_free_space(string directory)

Der Parameter Verzeichnis wird zur Angabe der Datei verwendet System- oder Festplattenunterscheidung!

Erklärung:

Diese Funktion gibt die Gesamtgröße der Festplattenpartition zurück, auf der sich das Verzeichnis befindet Wenn Sie also verschiedene Verzeichnisse derselben Festplattenpartition als Parameter angeben, sind die Ergebnisse genau die gleichen!

Anwendungsbeispiel

In diesem Beispiel wird die Funktion disk_total_space() verwendet, um die Größe der Festplattenpartition zu ermitteln. Der spezifische Code lautet wie folgt:

(1) Erstellen Sie eine PHP-Datei, fügen Sie ein Formular hinzu, legen Sie ein Textfeld fest, klicken Sie auf die Schaltfläche „Senden“, verwenden Sie die POST-Methode und senden Sie sie an diese Seite.

(2) Rufen Sie den vom Formular übermittelten Verzeichnispfad über $_POST ab und bestimmen Sie zunächst, ob das erhaltene Verzeichnis angemessen ist. Anschließend wird die erhaltene Zeichenfolge über die Funktion iconv() codiert und konvertiert und anschließend wird die erhaltene Zeichenfolge abgefangen. Rufen Sie die Referenzpartition ab, in der sich das Verzeichnis befindet, und verwenden Sie die Funktion disk_total_space(), um die Größe der Festplattenpartition zu ermitteln. Verwenden Sie abschließend die Funktionen opendir() und readdir(), um den Inhalt des übermittelten Verzeichnisses zu lesen Der Code lautet wie folgt:

<form name="form1" action="6.php" method="post">
   文件名称: <input name="file_name" type="text">
           <input type="submit" name="Submit" value="提交">
</form>
<?php
header("Content-Type:text/html; charset=utf-8");
if ($_POST[&#39;file_name&#39;]){
if($_POST[&#39;file_name&#39;]!="" && is_file($_POST[&#39;file_name&#39;])==false){
    $file_name = iconv("utf-8","gb2312",$_POST[&#39;file_name&#39;]);      // 编码格式转换
    if (file_exists($file_name)){                                  //判断目录是否存在
        $len = strripos($file_name,":");                            //截取字符串
        $dir = substr($file_name,0,$len+1);                        //获取提交目录所在磁盘
        $filesize_z = disk_total_space($dir);                       //获取目录大小
        $filesize_z = number_format($filesize_z/(1024*1024*1024),2,".","");    //数字的格式化
        $filesize_s = disk_free_space($dir);                            //获取裁判剩余空间
        $filesize_s =  number_format($filesize_s/(1024*1024*1024),2,".",""); //字节的格式化
        echo "本地磁盘(".$dir.") 总大小:".$filesize_z." GB   可用空间:".$filesize_s."GB <br><br>";
        echo $_POST[&#39;file_name&#39;]."目录下的内容:"."<br>";
        $i = 0;
        $list = opendir($file_name);                                //打开目录
        while($read_list = readdir($list)){                         //读取目录
            $i++;
            echo "$i:".iconv("gb2312","utf-8",$read_list)."<br>";   //输出目录中的内容
        }
        closedir($list);                                            //关于目录
    }else{
        echo "<script>alert(&#39;目录不存在!&#39;);</script>";
    }
}else{
    echo "<script>alert(&#39;请输入正确的目录路径!&#39;);</script>";
}
}

Die obigen Ausgabeergebnisse lauten wie folgt:

So ermitteln Sie die Größe der Festplattenpartition über die PHP-Dateisystemfunktion

Erklärung:

strripos( )-Funktion wird verwendet, um die letzte Position einer angegebenen Zeichenfolge in einer anderen Zeichenfolge zu bestimmen. Mit dieser Funktion können Sie die letzte Position der angegebenen Zeichenfolge A in einer anderen Zeichenfolge B abrufen. Der Rückgabewert ist vom Typ int. Basierend auf dem Rückgabewert kann Zeichenfolge B mit Zeichenfolge A als Teilungspunkt abgefangen werden. Die Funktion muss bei der Durchführung von Abfangvorgängen angewendet werden.

$len = strripos($file_name,":");                            //截取字符串
$dir = substr($file_name,0,$len+1);                        //获取提交目录所在磁盘

Das obige ist der detaillierte Inhalt vonSo ermitteln Sie die Größe der Festplattenpartition über die PHP-Dateisystemfunktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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