czproject / path-helper
Helper class for creating relative paths, absolutizing, etc.
Fund package maintenance!
Other
Installs: 7 935
Dependents: 6
Suggesters: 0
Security: 0
Stars: 3
Watchers: 2
Forks: 0
Open Issues: 0
Requires
- php: >=5.3.0
Requires (Dev)
- nette/tester: ^1.7
README
Helper class for creating relative paths, absolutizing paths,...
Installation
Download a latest package or use Composer:
composer require czproject/path-helper
Library requires PHP 5.6.0 or later.
Usage
use CzProject\PathHelper;
Absolutize path
PathHelper::absolutizePath($path); PathHelper::absolutizePath('path/to/my/../text/./file.txt');
Returns /path/to/text/file.txt
You can use second parameter $prefix
:
PathHelper::absolutizePath('path/to/my/../text/./file.txt', NULL); // returns path/to/text/file.txt PathHelper::absolutizePath('path/to/my/../text/./file.txt', '/file/root/'); // returns /file/root/path/to/text/file.txt
Creating relative path
$source = 'root/dir/docs/1.0/index.html'; $dest = 'root/dir/imgs/image.jpg'; PathHelper::createRelativePath($source, $dest);
Returns ../../imgs/image.jpg
Is path current?
PathHelper::isPathCurrent($path, $mask); PathHelper::isPathCurrent('dir/file.txt', 'dir/file-2.txt'); // returns FALSE PathHelper::isPathCurrent('dir/file.txt', 'dir/*'); // returns TRUE PathHelper::isPathCurrent('dir/sub/file.txt', 'dir/*'); // returns FALSE PathHelper::isPathCurrent('dir/sub/file.txt', 'dir/*/*'); // returns TRUE PathHelper::isPathCurrent('dir/sub/file.txt', 'dir/**'); // returns TRUE
Normalize path
Normalizes path delimiters to /
.
PathHelper::normalizePath($path); PathHelper::normalizePath('\\path\\to\\file.txt');
Returns /path/to/file.txt
.
Helper instance
$helper = new CzProject\PathHelper; $helper->absolutizePath('/path/to/to/../file'); $helper->createRelativePath('/path/to/file', '/path/to'); $helper->isPathCurrent('/path/file', '/path/*');
License: New BSD License
Author: Jan Pecha, https://www.janpecha.cz/