composer require cobbdb/eta
The symbol for the Greek capital letter eta is H. Eta is often used in math as the symbol for efficiency.
This engine was designed for prototypes and small-scale web applications that need to be developed and deployed quickly with minimal setup. Since Eta does not use custom template tags, projects can be easily turned over to a more robust framework like Cake or Yii in the future.
- Copy this file into a directory of your choosing and add the require_once to the file that is using Eta.
- The default directory for Eta is
./
, but may be changed viaH::setHome()
. - The default page template for Eta is
./base.view
, but this may be changed viaH::setBase()
.
// index.php
require_once "H.php";
$who = "World";
echo H::render(null, [
"name" => $who
]);
// base.view
Hello <?= $name ?>!
<div id="myWidget">
<?= H::render("neat/widget.html") ?>
</div>
Render a template without auto-responding.
Parameters
- {String} path - Path to the template or null to use the base template.
- {Array} [model] - Data to inject into the template.
- {Boolean} [grounded] - False to use a literal path and bypass the home directory.
Returns {String}
Throws {MissingTemplateException}
// The 'grounded' argument can bypass the home directory
$myView = H::render("../my/template.html", [], false);
Set a new default views directory.
Paramters
- {String} path
- {Boolean} [remember] - True to retain this as the default directory for use with reset().
// Default is the same directory in which eta.php file is placed.
H::setHome("/path/to/my/templates/");
Set a new default base page template.
Paramters
- {String} path - Complete path to new base template.
// Default is ./base.view
H::setBase("/path/to/myBase.html");
// Now H::render(null) will use a new base template!
Reset Eta back to default home directory.
// Use special templates directory temporarily.
H::setHome("../path/to/other/templates/");
H::render("some/newThing.tpl");
H::render("and/another/template.html");
// Now reset home back to default for rest of project!
H::reset();
By Dan Cobb: cobbdb@gmail.com - petitgibier.sytes.net
License: MIT