Skip to content

Recursively prepends a path prefix to path string, array or StdClass objects.

License

Notifications You must be signed in to change notification settings

GermaniaKG/PathPrefixer

Repository files navigation

Germania KG · PathPrefixer

Recursively prepends a path prefix to path string, array or StdClass objects.

Packagist PHP version Build Status Scrutinizer Code Quality Code Coverage Build Status

Installation with Composer

$ composer require germania-kg/pathprefixer

Usage

<?php
use Germania\PathPrefixer\PathPrefixer;

// Root will default to getcwd()
$prefixer = new PathPrefixer( '/path/to/root' );

echo $prefixer('templates');
// Result: "/path/to/root/templates"


// Try on array:
$result = $prefixer([
	'foo' => 'includes',
	'bar' => 'templates'
]);
// Result: 
//	'foo' => '/path/to/root/includes',
//	'bar' => '/path/to/root/templates'

Custom path separators

Per default, the DIRECTORY_SEPARATOR constant will be used for glueing the prefix and the path. You may pass a custom seperator as well:

<?php
$prefixer = new PathPrefixer( '/path/to/root', "@" );

echo $prefixer('templates');
// Result: "/path/to/root@templates"

Issues

See issues list.

Development

$ git clone https://github.com/GermaniaKG/PathPrefixer.git
$ cd PathPrefixer
$ composer install

Unit tests

Either copy phpunit.xml.dist to phpunit.xml and adapt to your needs, or leave as is. Run PhpUnit test or composer scripts like this:

$ composer test
# or
$ vendor/bin/phpunit