Joomla! Programmierung/Framework/JFolder/files

Aus Joomla! Dokumentation
Wechseln zu: Navigation, Suche

JFolder/files ist eine Helferfunktion um die Dateinamen eines Ordners einzulesen.

Inhaltsverzeichnis

[Bearbeiten] Syntax

Joomla 1.5 static files( $path, [$filter], [$recurse], [$fullpath], [$exclude] )
Joomla 1.6 static files( $path, [$filter], [$recurse], [$fullpath], [$exclude], [$excludefilter] )
  • @return array Dateien im angegebenen Verzeichnis.
  • @since Joomla 1.5
Parameter Datentyp Beschreibung Standardwert
$path string Der Pfad zum Verzeichnis
[$filter] string Filter für Dateinamen (regulärer Ausdruck) '.'
[$recurse] mixed True um Unterverzeichnisse rekursiv zu durchsuchen oder ein integer der die maximale rekursionstiefe angibt. false
[$fullpath] boolean True um den kompletten Pfad zurückzugeben. false
[$exclude] array Array mit Dateinamen die bei der Suche ausgeschlossen werden sollen. Joomla 1.5array('.svn', 'CVS')

Joomla 1.6array('.svn', 'CVS', '.DS_Store', '__MACOSX')

Joomla 1.6
[$excludefilter]
array Array mit regulären Ausdrücken für Dateien, die bei der Suche ausgeschlossen werden sollen. array('^\..*','.*~')

[Bearbeiten] Beispiele

Alle Dateien in einem Verzeichnis Ausgabe
$path = JPATH_ADMINISTRATOR.DS.'components'.DS.'com_users';

$files = JFolder::files($path);

print_r($files);
Array
(
    [3] => config.xml
    [5] => controller.php
    [4] => index.html
    [1] => users.class.php
    [2] => users.php
    [0] => users.xml
)
Nur Dateien die mit users beginnen Ausgabe
$files = JFolder::files($path, '^users');
Array
(
    [1] => users.class.php
    [2] => users.php
    [0] => users.xml
)
Alle Dateien mit Ausnahme der Dateien File white.png index.html und File white.png .svn Ausgabe
$files = JFolder::files($path, '.', false, false, array('index.html', '.svn'));

Weiteres Beispiel:
Dateien die mit .xml oder .php enden

$files = JFolder::files($path, '.xml$|.php$');

Array
(
    [3] => config.xml
    [4] => controller.php
    [1] => users.class.php
    [2] => users.php
    [0] => users.xml
)

[Bearbeiten] Siehe auch

[Bearbeiten] Quellcode

JFolder::files in Joomla! 2.5.4

Folder blue.png libraries

  • Folder red.png joomla
    • Folder green.png filesystem
      • File php.png folder.php
  1. public static function files($path, $filter = '.', $recurse = false, $full = false, $exclude = array('.svn', 'CVS', '.DS_Store', '__MACOSX'),
  2. $excludefilter = array('^\..*', '.*~'))
  3. {
  4. // Check to make sure the path valid and clean
  5. $path = JPath::clean($path);
  6.  
  7. // Is the path a folder?
  8. if (!is_dir($path))
  9. {
  10. JError::raiseWarning(21, JText::sprintf('JLIB_FILESYSTEM_ERROR_PATH_IS_NOT_A_FOLDER_FILES', $path));
  11. return false;
  12. }
  13.  
  14. // Compute the excludefilter string
  15. if (count($excludefilter))
  16. {
  17. $excludefilter_string = '/(' . implode('|', $excludefilter) . ')/';
  18. }
  19. else
  20. {
  21. $excludefilter_string = '';
  22. }
  23.  
  24. // Get the files
  25. $arr = self::_items($path, $filter, $recurse, $full, $exclude, $excludefilter_string, true);
  26.  
  27. // Sort the files
  28. asort($arr);
  29. return array_values($arr);
  30. }
Meine Werkzeuge
Namensräume
Varianten
Aktionen
Navigation
Sonstiges
Team Navigation
Werkzeuge