strukt / generator
Struk Generator
v1.1.1-alpha
2024-01-25 03:18 UTC
Requires
- php: ^8.1
- strukt/commons: v1.1.1-alpha
This package is auto-updated.
Last update: 2025-01-06 20:52:41 UTC
README
Intro
Simple package for generating templates and reading annotations.
Templator
$data = array( "title" => "The Title", "subtitle" => "Subtitle", "footer" => "Foot", "people" => array( array("name" => "Steve","surname" => "Johnson"), array("name" => "James", "surname" => "Johnson"), array("name" => "Josh", "surname" => "Smith") ), "page" => "Home" ); $tpl = "<html> <title>{{title}}</title> <body> <h1>{{subtitle}}</h1> {{begin:people}} <b>{{name}}</b> {{surname}}<br /> {{end:people}} <br /><br /> <i>{{footer}}</i> </body> </html>"; $output = Strukt\Templator::create($tpl, $data);
Annotations
Annotation supported format:
/** * @Route(/) */ class DefaultController{ /** * @Route(/hello/{to:alpha}) * @Method(POST, GET) * @Provides(application/html) */ function hello($to){ ... /** * @Route(/login) * @Method(GET) * @Secure(username=test, password=test) * @Expects(username,password) * * note the below will not be parsed * @param str $username * @param str $password */ function login($username, $password){ ...
Run parser:
$parser = new \Strukt\Annotation\Parser\Basic(new \ReflectionClass("\Controller\DefaultController")); print_r($parser->getAnnotations());