Home >Backend Development >PHP Tutorial >What file is pagefile.sys? PHP file traversal implementation code

What file is pagefile.sys? PHP file traversal implementation code

WBOY
WBOYOriginal
2016-07-29 08:45:031175browse

Copy the code The code is as follows:


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

  • '.$path. '/'.$line.'
  • ';
    }
    }


    PHP traverses files and folders
    Add to the given folder C:\Windows\AppPatch
    1. First get the content under this folder Everything, that is, files and folders, are placed in an array
    $fileArr = array(
    'files' => array(), //Files are placed in an array
    'dirs' => array(), // Put an array in the folder
    )
    2. If there are subfolders, traverse the subfolders, get the folders and files, and put them into the array, and so on, without missing any

    Copy the code The code is as follows:


    $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 . DIRECTORY_SEPARATOR . $file;
    if(is_dir($cur_path)) {
    $ret['dirs'][$cur_path] = read_dir_all($cur_path);
    } else {
    $ret['files'][] = $cur_path;
    }
    }
    }
    closedir($handle);
    }
    return $ret;
    }
    $p = read_dir_all($dir);
    echo '

    '; <br>var_dump($p); <br>echo '
    ';
    ?>


    php traverses all directories and files in a folder
    We often encounter this during interviews This question: PHP traverses all files and subfolders in a folder.
      There are many solutions to this problem. But the general idea is the same. Use recursion.

    Copy the code The code is as follows:


    $path = './filepath';
    function getfiles($path)
    {
    if(!is_dir($path)) return;
    $handle = opendir( $path);
    while( false !== ($file = readdir($handle)))
    {
    if($file != '.' && $file!='..')
    {
    $path2= $path.'/'.$file;
    if(is_dir($path2))
    {
    echo ' ';
    echo $file;
    getfiles($path2);
    }else
    {
    echo ' ';
    echo $file;
    }
    }
    }
    }
    print_r( getfiles($path));
    echo '


    ';
    function getdir($path)
    {
    if(!is_dir($path)) return ;
    $handle = dir($path);
    while($file=$handle->read())
    {
    if($file!='.' && $file!='..')
    {
    $path2 = $path.'/'.$file;
    if(is_dir($path2))
    {
    echo $file."t";
    getdir($path2);
    }else
    {
    echo $file .' ';
    }
    }
    }
    }
    getdir($path);
    echo '
    ';
    function get_dir_scandir($path){
    $tree = array();
    foreach(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";
    }
    }
    }
    }
    get_dir_scandir($path);
    echo '

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

    ';
    function myscandir($path)
    {
    if(!is_dir($path)) return;
    foreach(scandir($path) as $ file)
    {
    if($file!='.' && $file!='..')
    {
    $path2= $path.'/'.$file;
    if(is_dir($path2))
    {
    echo $file;
    myscandir($path2);
    }else
    {
    echo $file.' ';
    }
    }
    }
    }
    myscandir($path);
    echo '
    ';
    function myglob($path)
    {
    $path_pattern = $path.'/*';
    foreach(glob($path_pattern) as $file)
    {
    if(is_dir($file))
    {
    echo $file ;
    myscandir($file);
    }else
    {
    echo $file.' ';
    }
    }
    }
    myglob($path);

    The above introduces what file pagefile.sys is and the PHP file traversal implementation code, including what file pagefile.sys is. I hope it will be helpful to friends who are interested in PHP tutorials.

    Statement:
    The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn