This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
symfony/src/Symfony/Component/Filesystem
Fabien Potencier 694bd72611 Merge branch '2.4'
* 2.4: (44 commits)
  [FrameworkBundle] Add missing license headers
  Fix parent serialization of user object
  [DependencyInjection] fixed typo
  added condition to avoid skipping tests on JSON_PRETTY support
  add memcache, memcached, and mongodb extensions to run skipped tests
  [DependencyInjection] Fixed support for backslashes in service ids.
  fix #9356 [Security] Logger should manipulate the user reloaded from provider
  [FrameworkBundle] Added extra details in XMLDescriptor to improve container description
  fixed CS
  Crawler default namespace fix
  [BrowserKit] fixes #8311 CookieJar is totally ignorant of RFC 6265 edge cases
  [HttpFoundation] fixed constants that do exist in 2.3 (only in 2.4)
  fix 5528 let ArrayNode::normalizeValue respect order of value array provided
  fix #7243 allow 0 as arraynode name
  Fixed issue in BaseDateTimeTransformer when invalid timezone cause Transformation filed exception (closes #9403).
  BinaryFileResponse should also return 416 or 200 on some range-requets
  fix deprecated usage and clarify constructor defaults for number formatter
  Bumping dependency to ProxyManager to allow testing against the new 0.5.x branch changes
  Do normalization on tag options
  bumped Symfony version to 2.3.9
  ...
2013-12-26 08:59:17 +01:00
..
Exception Fixed typos 2013-11-16 15:13:54 +00:00
Tests [Filesystem] removed getPath() on Exceptions and cleaned up CS and error messages 2013-09-27 16:57:51 +02:00
.gitignore Added missing files .gitignore 2013-07-21 14:12:18 +02:00
CHANGELOG.md Mitigate dependency upon ConfigCache 2013-04-21 16:28:50 +02:00
composer.json updated version to 2.5 2013-11-24 21:17:07 +01:00
Filesystem.php Merge branch '2.3' into 2.4 2013-12-26 08:59:03 +01:00
LICENSE Merge branch '2.0' into 2.1 2013-01-04 18:00:54 +01:00
phpunit.xml.dist made usage of Composer autoloader for subtree-split unit tests 2012-11-09 14:10:06 +01:00
README.md updated the composer install command to reflect changes in Composer 2013-09-18 09:27:26 +02:00

Filesystem Component

Filesystem provides basic utility to manipulate the file system:

<?php

use Symfony\Component\Filesystem\Filesystem;

$filesystem = new Filesystem();

$filesystem->copy($originFile, $targetFile, $override = false);

$filesystem->mkdir($dirs, $mode = 0777);

$filesystem->touch($files, $time = null, $atime = null);

$filesystem->remove($files);

$filesystem->chmod($files, $mode, $umask = 0000, $recursive = false);

$filesystem->chown($files, $user, $recursive = false);

$filesystem->chgrp($files, $group, $recursive = false);

$filesystem->rename($origin, $target);

$filesystem->symlink($originDir, $targetDir, $copyOnWindows = false);

$filesystem->makePathRelative($endPath, $startPath);

$filesystem->mirror($originDir, $targetDir, \Traversable $iterator = null, $options = array());

$filesystem->isAbsolutePath($file);

Resources

You can run the unit tests with the following command:

$ cd path/to/Symfony/Component/Filesystem/
$ composer.phar install
$ phpunit