Manialib\Formatting is a PHP package for manipulating styles in Maniaplanet strings.
Learn more about Maniaplanet formatting characters on the wiki.
This is a work in progress. As long as we don't release a stable version, we might break stuff at any point. If this is a problem, feel free to open an issue and we'll try to help.
- Strip styles from strings: links, colors, etc.
- Convert strings to other formats: HTML for now
Find out more in the change log.
- PHP 8.1+
{
"require": {
"manialib/formatting": "^4.0"
}
}
Modify styles of a string:
Note the String fluent interface which allows to chain method calls
use Manialib\Formatting\ManiaplanetString;
$nickname = '$l[/~https://github.com/manialib/formatting]$cfeg$fff๐u1 $666ツ$l';
$string = new ManiaplanetString($nickname);
echo $string->stripColors()->stripLinks();
Will output:
g๐u1 ツ
Convert a string to HTML:
use Manialib\Formatting\ManiaplanetString;
$string = new ManiaplanetString('$cfeg$fff๐u1 $666ツ');
echo $string->toHtml();
Will output:
<span style="color:#cfe;">g</span><span style="color:#fff;">๐u1 </span><span style="color:#666;">ツ</span>
Everything you need for using this should be documented in Manialib/Formatting/StringInterface
.
$ php vendor/bin/phpunit
$ php vendor/bin/phpcs --standard=PSR2 src
We follow best practices from the amazing PHP ecosystem. Warm kudos to Symfony, The PHP League, the PHP subreddit and many more for inspiration and challenging ideas.
- We adhere to the best-practices put forward by PHP The Right Way
- We comply to the standards of the PHP-FIG
- We distribute code via Packagist and Composer
- We manage version numbers with Semantic Versioning
- We keep a changelog
- We use
Manialib\
as our PHP vendor namespace - We use
manialib/
as our Packagist vendor namespace - We'll (try to) make documentation & tests :)