teraone/slim-cli

This package is abandoned and no longer maintained. No replacement package was suggested.

Making a mock GET request through the CLI and enabling the same application entry point on CLI scripts.

2.0.0 2017-05-05 14:08 UTC

This package is not auto-updated.

Last update: 2020-01-24 16:40:23 UTC


README

Build Status

Slim 3 Framework CLI Request Middleware

This middleware will transform a CLI call into a GET Request. It is based on https://github.com/pavlakis/slim-cli but does not use the method paramter.

Add it with composer

composer require teraone/slim-cli

Pass the parameters in this order

route / query string

php public/index.php /status event=true

Add it in the middleware section of your application

$app->add(new \Teraone\SlimCli\CliRequest());

Pass a route to test it with


$app->get('/status', 'YourNameSpace\YourController:yourMethod')
    ->setName('status');

Check you're only using a CLI call

final class YourController
{
    ...

    public function yourMethod(Request $request, Response $response, $args)
    {

        // ONLY WHEN CALLED THROUGH CLI
        if (PHP_SAPI !== 'cli') {
            return $response->withStatus(404)->withHeader('Location', '/404');
        }

        if (!$request->getParam('event')) {
            return $response->withStatus(404)->withHeader('Location', '/404');
        }

        ...

    }

}

Credits

Based on Bobby DeVeaux's (@bobbyjason) Gulp Skeleton