Location: PHPKode > scripts > ClassDirectory > directory.php
<?php
//************************************************************************
// By Rosario Sensale
// Date: 2003 - 08 - 21
// Ver.: 1.00.00
// Function:
//           * SetName
//           * CreateDir
//           * GetDirName
//           * DeleteDir
//           * OpenConnectDir
//           * WorkDirectory
//           * OpenDir
//           * ViewTreeWitoutLink
//           * ClosePointer
//
//
// example:
// include_once 'Directory.php';
// $object = new ClassDirectory();
// $object->SetName("Admin");
// $object->OpenConnectDir();
// $object->CreateDir("prova");
// echo "Ti trovi nella cartella : ". $object->WorkDirectory() ."<br>";
// echo "Contenuto directory:<br> ";
// $object->ViewTreeWitoutLink();
// echo "<br>";
// $object->ReloadPointer();
//************************************************************************

class ClassDirectory {
    var $name_directory;
    var $open_handle;
    var $read;

    //Class construct
    function __construct(){
        $this->name_directory='';
        $this->open_handle='';
        $this->read='';
    }

    //Class destruct
    function __destruct(){
    }

    //Set var
    function SetName($namedirectory){
        $this->name_directory=$namedirectory;
    }
    
    //Get name of path from complete path
    //(/user/pippo/pippo.php->/user/pippo)
    function GetDirName($path){
        if (!isset($this->name_directory)){
            echo "You must set name of directory.";
        }else{
            return dirname($this->name_directory);
        }
    }

    //Make a directory
    function CreateDir($namedirectory){
        if (!isset($this->name_directory)){
            echo "You must set name of directory.";
        }else{
            if (!isset($this->open_handle)){
                echo "You must open directory (use OpenConnectDir).";
            }else{
                if (is_dir($namedirectory)==false){
                    return mkdir($namedirectory);
                }
            }
        }
    }

    //Delete Directory
    function DeleteDir($namedirectory){
        if (!isset($this->name_directory)){
            echo "You must set name of directory.";
        }else{
            if (!isset($this->open_handle)){
                echo "You must open directory (use OpenConnectDir).";
            }else{
                if (!is_dir($namedirectory)){
                    echo "$namedirectory is not a directory.";
                }else{
                    return rmdir($namedirectory);
                }
            }
        }
    }

    //Work directory
    function WorkDirectory(){
        if (!isset($this->name_directory)){
            echo "You must set name of directory.";
        }else{
            if (!isset($this->open_handle)){
                echo "You must open directory (use OpenConnectDir).";
            }else{
                return getcwd();
            }
        }
    }

    //Apre la directory indicata dalla variabile
    //$name_directory
    function OpenConnectDir(){
        if (!isset($this->name_directory)){
            echo "You must set name of directory.";
        }else{
            //check it is directory
            if (!is_dir($this->name_directory)){
                echo "The $this->name_directory is not a directory!!";
            }else{
                $this->open_handle = opendir($directory);
            }
        }
    }

    //Open directory
    function OpenDir($namedirectory){
        if (!isset($this->name_directory)){
            echo "You must set name of directory.";
        }else{
            //check it is directory
            if (!is_dir($this->name_directory)){
                echo "The $this->name_directory is not a directory!!";
            }else{
                chdir($namedirectory);
            }
        }
    }
    
    //Visualizza a video le directory
    function ViewTreeWitoutLink(){
        if (!isset($this->name_directory)){
            echo "You must set name of directory.";
        }else{
            if (!isset($this->open_handle)){
                echo "You must open directory (use OpenConnectDir).";
            }else{
                while($this->read = readdir($this->open_handle)) {
                    echo $this->read . "<br>\n";
                }
            }
        }
    }

    //Reload pointer of dir
    function ReloadPointer(){
        if (!isset($this->name_directory)){
            echo "You must set name of directory.";
        }else{
            if (!isset($this->open_handle)){
                echo "You must open directory (use OpenConnectDir).";
            }else{
                rewinddir($this->open_handle);
            }
        }
    }

    //Close Pointer
    function ClosePointer(){
        if (!isset($this->name_directory)){
            echo "You must set name of directory.";
        }else{
            if (!isset($this->open_handle)){
                echo "You must open directory (use OpenConnectDir).";
            }else{
                closedir($this->open_handle);
            }
        }
    }

}
?>
Return current item: ClassDirectory