diff --git a/CHANGELOG.md b/CHANGELOG.md index 2fff2e5347862c3de0b1c678881ee41838883fa8..aa84bdd3cf72f38f106f7af33c6c605043722f00 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +## [2.0.0] - 2021-10-01 +### Added +- Add output_render method to Renderer interface ## [1.1.0] - 2019-09-23 ### Added - PluginViewBuilder to facilitate building and rendering views for plugins \ No newline at end of file diff --git a/composer.json b/composer.json index 0baefc3528d090bbed41589085d5a404cc8bd32e..d446d53d0e1f82c9ec35f02286cd5f1c5ee459c3 100644 --- a/composer.json +++ b/composer.json @@ -7,7 +7,7 @@ } ], "require": { - "php": ">=5.5" + "php": ">=7.0" }, "require-dev": { "phpunit/phpunit": "<7", diff --git a/src/Renderer/Renderer.php b/src/Renderer/Renderer.php index 35aecc42293b9aba64859fd40badebbcbb9f6e2c..e106044c51747edbddf966f4e0242af2f477126f 100644 --- a/src/Renderer/Renderer.php +++ b/src/Renderer/Renderer.php @@ -23,4 +23,10 @@ interface Renderer * @return string */ public function render($template, array $params = null); + + /** + * @param string $template + * @param array $params + */ + public function output_render($template, array $params = null); } diff --git a/src/Renderer/SimplePhpRenderer.php b/src/Renderer/SimplePhpRenderer.php index 9d05084e69624437d6015c02f780885a4b225a00..5e6d7596f13430ae8aa76187d9056fac9a71c320 100644 --- a/src/Renderer/SimplePhpRenderer.php +++ b/src/Renderer/SimplePhpRenderer.php @@ -34,15 +34,23 @@ class SimplePhpRenderer implements Renderer * @return string */ public function render($template, array $params = null) + { + ob_start(); + $this->output_render( $template, $params ); + return ob_get_clean(); + } + + /** + * @param string $template + * @param array|null $params + */ + public function output_render($template, array $params = null) { if ($params !== null) { extract($params, EXTR_SKIP); } - ob_start(); include($this->resolver->resolve($template . '.php')); - - return ob_get_clean(); } }