Jump to main content Jump to doc navigation


Recursively deletes a directory tree of files.

The options array has the following parameters available:

  • deleteTop - If true, will delete the top directory that is specified. Defaults to false.
  • skipDirs - If true, will not delete the directories; just the files. Defaults to false.
  • extensions - An array of file extensions to filter by - will only delete files with those extensions. Set to null or false to delete all files.
  • delete_exclude_items - An array of names of files to skip.
  • delete_exclude_patterns - An array or string of patterns to exclude by.


API Docs: http://api.modxcms.com/xpdo/cache/xPDOCacheManager.html#deleteTree

boolean deleteTree (string $dirname, [array $options = array(
   'deleteTop' => false,
   'skipDirs' => false,
   'extensions' => array('.cache.php')


Delete the /modx/assets/videos/ directory (assuming the constant MODX_ASSETS_PATH is set) and all the files in it:

   'deleteTop' => true,
   'extensions' => false,

Delete only .flv files in the above directory:

   'deleteTop' => true,
   'extensions' => array('.flv'),

Delete all movies in above directory, except george.mov, buddies.flv, and any file name containing the word 'fun'.

   'deleteTop' => true,
   'extensions' => false,
   'delete_exclude_items' => array('george.mov','buddies.flv'),
   'delete_exclude_patterns' => '/fun/i',

See Also

  1. xPDOCacheManager.copyFile
  2. xPDOCacheManager.copyTree
  3. xPDOCacheManager.delete
  4. xPDOCacheManager.deleteTree
  5. xPDOCacheManager.endsWith
  6. xPDOCacheManager.escapeSingleQuotes
  7. xPDOCacheManager.get
  8. xPDOCacheManager.getCachePath
  9. xPDOCacheManager.getCacheProvider
  10. xPDOCacheManager.matches
  11. xPDOCacheManager.replace
  12. xPDOCacheManager.writeFile
  13. xPDOCacheManager.set
  14. xPDOCacheManager.writeTree