Hi! Let me introduce eport generator wich I have created for personal use.
To be honest I don't like create reports. It took soooooooo mcuh time. But this class now allows me to do it much faster.
Pros and cons
Mezon HTML report generator allows you to create reports in a simple and pretty way. This tool also shortens time wich you spend on coding.
This package is a part of Mezon Framework
Installation
Just type:
composer require mezon/html-report
Usage
Lets start from creating object of the report generator:
$report = new Html();
And since that moment we can add elements to the head or body:
// not that stylesheets are not validated, it is totally on your side
$report->head()->style()->selector('p')->css('color', 'red');
$report->head()->style()->selector('div')->css('color', 'green');;
$report->body()->p('Hello!');
$report->body()->div('World!');
// here we get HTML code in the variable $result
$result = $report->compile();
More complex examples
This example shows that every call creates new tag (except html and body). So if you want to add multyple tags then you need to store tag into variable:
$table = $report->table();
$row = $table->tr();
$row->td()->innerHtml('#1');
$row->td()->innerHtml('Legolas');
$row->td()->innerHtml('#2');
$row->td()->innerHtml('Frodo');
$row->td()->innerHtml('#3');
$row->td()->innerHtml('Aragorn');
Supported tags
For now you can use following tags:
- body
- div
- h1
- h2
- h3
- h4
- h5
- head
- p
- strong
- style
- table
- td
- tr
Inner HTML
If you need more tags, you can use innerHtml like in the example below:
$report->body()->innerHtml('<script>alert(1);</scrip>');
Learn more
More information can be found here:
It will be great if you will contribute something to this project. Documentation, sharing the project in your social media, bug fixing, refactoring, or even submitting issue with question or feature request. Thanks anyway )
Top comments (0)