PHP ファイル トラバーサルの実装コード_PHP チュートリアル

WBOY
リリース: 2016-07-21 15:29:40
オリジナル
905 人が閲覧しました

コードをコピーします コードは次のとおりです:

function Files($path)
{
foreach(scandir($path) as $line)
{
if($line=='.'| |$line= ='..') 続行;
if(is_dir($path.'/'.$line)) Files($path.'/'.$line);
else echo '
  • ' .$path. '/'.$line.'
  • ';
    }
    }

    指定されたフォルダー C:\Windows\AppPatch を追加します
    1.
    $fileArr = array(
    'files' => array(), //ファイルは配列に配置されます。
    'dirs' => array(), // フォルダーに配列を配置します
    )
    2. サブフォルダーがある場合は、サブフォルダーを走査し、フォルダーとファイルを取得し、それらを配列に配置するなど、欠落することなく実行します


    コードをコピーします コードは次のようになります:
    $dir = 'F:\game';
    function read_dir_all($dir) {
    $ret = array('dirs'=>array(), 'files'=> array());
    if ($handle = opendir($dir)) {
    while (false !== ($file = readdir($handle))) {
    if($file != '.' && $file !== '..') {
    $cur_path = $dir . $file;
    $ret['dirs'][$cur_path] = read_dir_all($cur_path);
    } else {
    $ret['files'][] = $cur_path;
    }
    }
    closedir($handle)
    }
    $p = read_dir_all($dir);
    echo '
    '; 


    php はフォルダー内のすべてのディレクトリとファイルをスキャンしますインタビュー 私たちはよくこの問題に遭遇しました: php はフォルダー内のすべてのファイルとサブフォルダーを走査します。
    この問題には多くの解決策があります。しかし、一般的な考え方は同じです。再帰を使用します。



    コードをコピーします

    コードは次のとおりです:

    $path = './filepath';
    function getfiles($path)
    {
    if(!is_dir($path)) return; = opendir( $path); while( false !== ($file = readdir($handle))) { if($file != '.' && $file!='..') {
    $path2= $path.'/'.$file;
    if(is_dir($path2))
    echo ' ';
    getfiles($path2)
    }else
    echo ' ' ;
    echo $file;
    }
    }
    print_r(getfiles($path));
    関数 getdir($path)
    if(!is_dir($path) )) リターン ;
    $handle = dir($path);
    while($file=$handle->read())
    {
    if($file!='.' && $file!='..' )
    {
    $path2 = $path.'/'.$file;
    if(is_dir($path2))
    {
    getdir($path2); echo $file ';
    }
    }
    getdir($path);
    function get_dir_scandir($path){
    $tree() scandir($ path) as $single){
    if($single!='.' && $single!='..')
    {
    $path2 = $path.'/'.$single;
    if(is_dir; ($path2 ))
    {
    echo $single."rn";
    get_dir_scandir($path2);
    }else
    {
    echo $single."rn"
    }
    }
    } );
    echo '

    ';
    function get_dir_glob(){
    $tree = array();
    foreach('./curl/*') as $single){
    echo $single." rn";
    }
    }
    get_dir_glob();
    echo '

    ';
    function myscandir($path)
    {
    if(!is_dir($path)) return;
    foreach(scandir($path) ) $ ファイルとして)
    {
    if($file!='.' && $file!='..')
    {
    $path2= $path.'/'.$file
    if(is_dir($path2) ))
    {
    echo $file;
    myscandir($path2);
    {
    echo $file.';
    }
    }
    }
    echo '関数 myglob($path)
    {
    $path_pattern = $path.'/*';
    foreach(glob($path_pattern) as $file)
    {
    if(is_dir($file))
    echo $file ;
    myscandir($file);
    {
    echo $file.';
    }





    http://www.bkjia.com/PHPjc/323394.html

    www.bkjia.com

    tru​​e

    http://www.bkjia.com/PHPjc/323394.html

    技術記事

    次のようにコードをコピーします。 function Files($path) { foreach(scandir($path) as $line) { if($line=='.'||$line=='..') continue; ( $path.'/'.$line)) ファイル($path.'/'.$line); else...





    ソース:php.cn
    このウェブサイトの声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
    最新の問題
    人気のチュートリアル
    詳細>
    最新のダウンロード
    詳細>
    ウェブエフェクト
    公式サイト
    サイト素材
    フロントエンドテンプレート