tina4stack / tina4php-shape
Tina4 PHP HTML Shape Language
Installs: 4 876
Dependents: 2
Suggesters: 0
Security: 0
Stars: 3
Watchers: 2
Forks: 1
Open Issues: 0
Requires (Dev)
- overtrue/phplint: ^2.0
- phpunit/phpunit: ^9
- roave/security-advisories: dev-latest
This package is auto-updated.
Last update: 2024-12-11 15:23:38 UTC
README
HTML Language called Shape where you write code to make HTML
Installation
composer require tina4stack/tina4php-shape
Basic usage
Each HTML tag has an underscore prefix, <p>
tag would be _p()
Normal Tag
echo _p("Hello"); //<p>Hello</p>
Tag with Attributes
echo _div(["class" => "form-group"], "Testing"); //<div class="form-group">Testing</div>
Nesting of tags
Some things become easier to code due to nesting, think of un ordered lists or select tags.
$lis = []; $lis[] = _li("One"); $lis[] = _li("Two"); $ul = _ul ($lis); $options = []; $options[] = _option("One"); $options[] = _option("Two"); $select = _select (["name" => "choose"], $options);
Finding a tag by id
Sometimes you want to manipulate a tag's content, so we find it based on the id attribute.
$tag = $html->byId("someId");
Set the html of a tag
$tag->html(_p("Changed HTML"));
Example
<?php require_once "vendor/autoload.php"; //Start some HTML $lis = []; $lis[] = _li("One"); $lis[] = _li("Two"); $ul = _ul ($lis); $html = _shape( _doctype("html"), _html(["lang" => "en"], _head( _title("Testing") ), _body( _h1(["id" => "someId"],"Hello World! H1"), _h2("Hello World! H2"), $a = _h3("Hello World! H3"), _h4("Hello World! H4"), _h5("Hello World! H5"), $ul ) )); $a->html(_b(["style" => "color: red"],"Hello")); $html->byId("someId")->html("====="); echo $html;
You should see something like this