_rmtree() public method

public _rmtree ( $dir )
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;
     }
 }