Auth_OpenID_FileStore::_rmtree PHP Method

_rmtree() public method

public _rmtree ( $dir )
    function _rmtree($dir)
    {
        if ($dir[strlen($dir) - 1] != DIRECTORY_SEPARATOR) {
            $dir .= DIRECTORY_SEPARATOR;
        }
        if ($handle = opendir($dir)) {
            while (false !== ($item = readdir($handle))) {
                if (!in_array($item, array('.', '..'))) {
                    if (is_dir($dir . $item)) {
                        if (!Auth_OpenID_FileStore::_rmtree($dir . $item)) {
                            return false;
                        }
                    } else {
                        if (is_file($dir . $item)) {
                            if (!unlink($dir . $item)) {
                                return false;
                            }
                        }
                    }
                }
            }
            closedir($handle);
            if (!@rmdir($dir)) {
                return false;
            }
            return true;
        } else {
            // Couldn't open directory.
            return false;
        }
    }

Usage Example

Ejemplo n.º 1
0
 /**
  * @access private
  */
 function _rmtree($dir)
 {
     if ($dir[strlen($dir) - 1] != DIRECTORY_SEPARATOR) {
         $dir .= DIRECTORY_SEPARATOR;
     }
     if ($handle = opendir($dir)) {
         while ($item = readdir($handle)) {
             if (!in_array($item, array('.', '..'))) {
                 if (is_dir($dir . $item)) {
                     if (!Auth_OpenID_FileStore::_rmtree($dir . $item)) {
                         return false;
                     }
                 } else {
                     if (is_file($dir . $item)) {
                         if (!unlink($dir . $item)) {
                             return false;
                         }
                     }
                 }
             }
         }
         closedir($handle);
         if (!@rmdir($dir)) {
             return false;
         }
         return true;
     } else {
         // Couldn't open directory.
         return false;
     }
 }