Lightweight function to easily hide printed data.

0.1 2018-07-20 20:30 UTC

This package is auto-updated.

Last update: 2020-12-28 17:15:33 UTC



Replacement function for echo/print. It will take the string, hide it and then wrap the new hidden string with whatever wrapper is specified.

echo John Smith will print John Smith

Out-of-the-box safeecho('John Smith') will print J*** S****

With a configuration file safeecho('John Smith') can print <span style="cursor: pointer;" onmouseout="this.innerHTML='J*** S****'" onmouseover="this.innerHTML='John Smith'">J*** S****</span>


The supported way of installing safeecho is via Composer.

$ composer require linio/safeecho

Autoload function

In the composer.json file, add or append to the "autoload" field,

"autoload": {
    "files": [

Configure safeecho Output

To override the default configuration of safeecho, you will need a configuration file.

Accepted file names are: safeecho.ini safeecho.json safeecho.php safeecho.xml safeecho.yaml safeecho.yml

Configuration files are searched for in the above order. The first configuration file found, is the configuration that is used.

The recommended location for the configuration is the project root directory.

Example YML Configurations


decorator: Linio\SafeEcho\Decorator\MouseHoverDecorator

If you want to change the 'hideChar'


decorator: Linio\SafeEcho\Decorator\MouseHoverDecorator
hideChar: '~'

safeecho('John Smith') will now print <span style="cursor: pointer;" onmouseout="this.innerHTML='J~~~ S~~~~'" onmouseover="this.innerHTML='John Smith'">J~~~ S~~~~</span>

To use your own custom Decorator:

  • YourCustomDecorator must extend SafeEchoDecorator


    class: \Path\To\YourCustomDecorator
        arg1: arg1Value
        arg2: arg2Value

Please see safeecho Configuration File for configuration file examples.


$ vendor/bin/phpunit


The MIT License (MIT). Please see License File for more information.