agrism / php-html
A Simple HTML Library for PHP
v0.0.7
2020-11-01 14:49 UTC
Requires
- php: ^7.2
Requires (Dev)
- phpunit/phpunit: ~8.0
This package is auto-updated.
Last update: 2024-12-04 13:44:33 UTC
README
Installing
You can clone this git repository into your project
git clone git://github.com/agrism/php-html.git
or you can use composer
composer require agrism/php-html
Usage:
Example 1
<?php use Agrism\PhpHtml\Builder\Attribute; use Agrism\PhpHtml\Builder\Element; $table = Element::factory('table') ->addAttribute(Attribute::factory('border')->setValue(1)) ->addContent( Element::factory('tr')->addContent( Element::factory('td') ->addContent( Element::factory() ->addValue('A') ->addValue('B') ->addValue('C') ) ->addContent( Element::factory('table') ->addAttribute(Attribute::factory('border', 3)) ->addAttribute(Attribute::factory('style', 'background-color:red;')) ->addContent( Element::factory('tr') ->addContent( Element::factory('td') ->addContent( Element::factory()->addValue(5) ) ) ->addContent( Element::factory('td') ->addAttribute(Attribute::factory('style', 'background-color:blue;')) ->addContent( Element::factory()->addValue(15) ) ) ) ) ) ); Element::factory('html') ->addContent($table) ->addContent($table) ->setEchoValue() ->render();
Example 1 result:
<html> <table border="1"> <tr> <td>ABC <table border="3" style="background-color:red;"> <tr> <td>5</td> <td style="background-color:blue;">15</td> </tr> </table> </td> </tr> </table> <table border="1"> <tr> <td>ABC <table border="3" style="background-color:red;"> <tr> <td>5</td> <td style="background-color:blue;">15</td> </tr> </table> </td> </tr> </table> </html>
Example 2
<?php use Agrism\PhpHtml\Table\Table; Table::factory() ->addAttribute('border', 13) ->addRows([ ['p1', 'p2', 'p3'], ['p11', 'p22', 'p33'], ], ['style' => 'background-color:yellowgreen;'] ) ->addHead(['title1', 'title2', 'title3'], ['border' => 1, 'style' => 'background-color:brown;']) ->addHead(['title11', 'title22', 'title33'], ['border' => 1, 'style' => 'background-color:blue;']) ->addRow(['a', 'b', 'c'], ['style' => 'background-color:red;']) ->addRow(['a1', 'b1', 'c1'], ['style' => 'background-color:yellow;font-size:28px;color:blue;text-align:right']) ->addRow(['a2', 'b2', 'c2']) ->render();
Example 2 result:
<table border="13"> <thead> <tr border="1" style="background-color:brown;"> <th>title1</th> <th>title2</th> <th>title3</th> </tr> <tr border="1" style="background-color:blue;"> <th>title11</th> <th>title22</th> <th>title33</th> </tr> </thead> <tbody> <tr style="background-color:yellowgreen;"> <td>p1</td> <td>p2</td> <td>p3</td> </tr> <tr style="background-color:yellowgreen;"> <td>p11</td> <td>p22</td> <td>p33</td> </tr> <tr style="background-color:red;"> <td>a</td> <td>b</td> <td>c</td> </tr> <tr style="background-color:yellow;font-size:28px;color:blue;text-align:right"> <td>a1</td> <td>b1</td> <td>c1</td> </tr> <tr> <td>a2</td> <td>b2</td> <td>c2</td> </tr> </tbody> </table>
Example 3
<?php use Agrism\PhpHtml\Table\Table; $nestedTable = Table::factory() ->addAttribute('border', 13) ->addRow(['A', 'B']) ->getOutput(); Table::factory() ->addAttribute('border', 1) ->addRow([1,2,3, $nestedTable]) ->render();
Example 3 result:
<table border="1"> <thead></thead> <tbody> <tr> <td>1</td> <td>2</td> <td>3</td> <td> <table border="13"> <thead></thead> <tbody> <tr> <td>A</td> <td>B</td> </tr> </tbody> </table> </td> </tr> </tbody> </table>