stilch / path-locator
Generates an absolute path to a file or directory
1.0.0
2021-01-07 20:18 UTC
Requires
- php: >=7.0
Requires (Dev)
- phpunit/phpunit: ^7
This package is auto-updated.
Last update: 2025-05-08 19:49:36 UTC
README
Generates an absolute path to a file or directory.
Installation
composer require stilch/path-locator
Requires PHP 7.0 or newer.
Usage
<?php use PathLocator\Exception\PathNotFoundException; use PathLocator\PathLocator; require __DIR__ . '/vendor/autoload.php'; //Initialize with the root directory of the project $pathLocator = new PathLocator(__DIR__); //Add storage directory and return full path to storage directory $pathLocator->addPath('storageDir', 'storage'); //Returns the full path to the file image.png without checking for file existence $pathLocator->locate('storageDir', 'image.png', false); try { //Returns the full path to the file image.png or exception if file not exists $pathLocator->locate('storageDir', 'image.png'); } catch (PathNotFoundException $e) { //Exception handling } //Create a temporary directory and add to pathLocator $tempDir = $pathLocator->locate('storageDir', 'temp', false); if (!is_dir($tempDir)) { mkdir($tempDir, 0555); } $pathLocator->addPath('tempDir', $tempDir, true); //Add a temporary system directory and return the full path to it $pathLocator->addPath('systemTemp', sys_get_temp_dir(), true); //Returns the path to a temporary file in the system temporary directory $pathLocator->locate('systemTemp', 'someTmpFile.tmp', false); //Returns the path to a temporary file in the temporary directory of the project $pathLocator->locate('tempDir', 'someTmpFile.tmp', false);