Heim > Backend-Entwicklung > PHP-Problem > So lösen Sie das Problem verstümmelter Zeichen beim Durchlaufen von PHP-Dateien

So lösen Sie das Problem verstümmelter Zeichen beim Durchlaufen von PHP-Dateien

藏色散人
Freigeben: 2023-03-04 13:52:01
Original
2369 Leute haben es durchsucht

Lösung für verstümmelte Dateien, die von PHP durchlaufen werden: Erstellen Sie zunächst eine PHP-Beispieldatei. Ändern Sie dann die Dateikodierung in „GBK“. Verwenden Sie abschließend die Methode „read_all“, um alle Dateien im Ordner zu durchlaufen.

So lösen Sie das Problem verstümmelter Zeichen beim Durchlaufen von PHP-DateienPHP-Video-Tutorial“

Ich war zutiefst beeindruckt von dem kürzlichen Interview, als ich in meine Heimatstadt Henan zurückkehrte und über ein Jahr lang ein Baby bekam und feststellte, dass ich es nicht mehr behalten konnte Ich bin mit der Entwicklung der IT-Branche auf dem Laufenden

Interviewprozess Ich habe festgestellt, dass viele Unternehmen diese Frage in ihren schriftlichen Prüfungsfragen haben und dass es sich auch um eine Funktion handelt, die häufig in der Arbeit verwendet wird.

Ist das nicht ein Kinderspiel

<?php
/*
* 遍历文件夹下所有文件
*
* 作者:郭猛
* 邮箱:martin.guo@qq.com
*
*/

function read_all ($dir){
    if(!is_dir($dir)) return false;

    $handle = opendir($dir);

    if($handle){
        while(($fl = readdir($handle)) !== false){
            $temp = $dir.DIRECTORY_SEPARATOR.$fl;
            //如果不加  $fl!=&#39;.&#39; && $fl != &#39;..&#39;  则会造成把$dir的父级目录也读取出来
            if(is_dir($temp) && $fl!=&#39;.&#39; && $fl != &#39;..&#39;){
                echo &#39;目录:&#39;.$temp.&#39;<br>&#39;;
                read_all($temp);
            }else{
                if($fl!=&#39;.&#39; && $fl != &#39;..&#39;){

                    echo &#39;文件:&#39;.$temp.&#39;<br>&#39;;
                }
            }
        }
    }
}

read_all(&#39;D:\wamp\www\test&#39;);

?>
Nach dem Login kopieren

Öffnen Sie den Browser mit vollem Vertrauen

So lösen Sie das Problem verstümmelter Zeichen beim Durchlaufen von PHP-DateienIch bin 屮艸芔茻, was zum Teufel! </p><p>In der Windows-Umgebung ist die Dateikodierung UTF8. Wenn sich im Verzeichnis ein chinesisches Verzeichnis befindet, werden verstümmelte Zeichen angezeigt! ! </p><p>Zu diesem Zeitpunkt sind sowohl meine Dateikodierung als auch die Browser-Anzeigekodierung utf-8. Ich dachte, der Verzeichnisname von Windows sei GBK, also habe ich den Code mit iconv konvertiert, wie in Zeile 17 gezeigt unten: </p><div class=

<?php
/*
* 遍历文件夹下所有文件
*
* 作者:郭猛
* 邮箱:martin.guo@qq.com
*
*/

function read_all ($dir){
    if(!is_dir($dir)) return false;

    $handle = opendir($dir);

    if($handle){
        while(($fl = readdir($handle)) !== false){
            $temp = iconv(&#39;GBK&#39;,&#39;utf-8&#39;,$dir.DIRECTORY_SEPARATOR.$fl);//转换成utf-8格式
            //如果不加  $fl!=&#39;.&#39; && $fl != &#39;..&#39;  则会造成把$dir的父级目录也读取出来
            if(is_dir($temp) && $fl!=&#39;.&#39; && $fl != &#39;..&#39;){
                echo &#39;目录:&#39;.$temp.&#39;<br>&#39;;
                read_all($temp);
            }else{
                if($fl!=&#39;.&#39; && $fl != &#39;..&#39;){

                    echo &#39;文件:&#39;.$temp.&#39;<br>&#39;;
                }
            }
        }
    }
}

read_all(&#39;D:\wamp\www\test&#39;);

?>
Nach dem Login kopieren

Iconv zur 17. Codezeile hinzufügen, diesmal dürfte es kein Problem sein

So lösen Sie das Problem verstümmelter Zeichen beim Durchlaufen von PHP-DateienDatei beurteilt! Die folgende Datei wurde nicht gelesen!

Habe es alleine getestet

<?php

$dir=&#39;D:\wamp\www\test\test_dir\子目录&#39;;
var_dump(is_dir($dir));

?>
Nach dem Login kopieren

Es funktioniert wirklich nicht im UTF8-Kodierungsformat

So lösen Sie das Problem verstümmelter Zeichen beim Durchlaufen von PHP-DateienÄndern Sie einfach die Dateikodierung auf GBK</p><p><img style=

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem verstümmelter Zeichen beim Durchlaufen von PHP-Dateien. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
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 Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage