diff --git a/example/.gitignore b/example/.gitignore new file mode 100644 index 0000000..61ead86 --- /dev/null +++ b/example/.gitignore @@ -0,0 +1 @@ +/vendor diff --git a/example/cache/.gitignore b/example/cache/.gitignore new file mode 100644 index 0000000..c96a04f --- /dev/null +++ b/example/cache/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore \ No newline at end of file diff --git a/example/composer.json b/example/composer.json new file mode 100644 index 0000000..6a53655 --- /dev/null +++ b/example/composer.json @@ -0,0 +1,6 @@ +{ + "require": { + "slim/slim": "^3.0", + "hiropeke/slim-blade-view": "^0.1.1" + } +} diff --git a/example/public/index.php b/example/public/index.php new file mode 100644 index 0000000..f83f894 --- /dev/null +++ b/example/public/index.php @@ -0,0 +1,40 @@ + [ + 'displayErrorDetails' => true, // set to false in production + + // Renderer settings + 'renderer' => [ + 'blade_template_path' => __DIR__ . '/../views', // String or array of multiple paths + 'blade_cache_path' => __DIR__ . '/../cache', // Mandatory by default, though could probably turn caching off for development + ], + ], +]; + +// Create Slim app +$app = new \Slim\App($config); + +// Fetch DI Container +$container = $app->getContainer(); + +// Register Blade View helper +$container['view'] = function ($container) { + return new \Slim\Views\Blade( + $container['settings']['renderer']['blade_template_path'], + $container['settings']['renderer']['blade_cache_path'] + ); +}; + +// Define named route +$app->get('/hello/{name}/', function ($request, $response, $args) { + return $this->view->render($response, 'profile', [ + 'name' => $args['name'], + ]); +})->setName('profile'); + +// Run app +$app->run(); diff --git a/example/views/profile.blade.php b/example/views/profile.blade.php new file mode 100644 index 0000000..063cd81 --- /dev/null +++ b/example/views/profile.blade.php @@ -0,0 +1 @@ +Hello, {{ $name }}