PHP Classes

Jupitern Table: Generate HTML tables from cell data and attributes

Recommend this page to a friend!
  Info   View files Example   View files View files (7)   DownloadInstall with Composer Download .zip   Reputation   Support forum   Blog    
Ratings Unique User Downloads Download Rankings
Not enough user ratingsTotal: 124 All time: 9,392 This week: 147Up
Version License PHP version Categories
jupitern-table 1.0.3Free for non-comm...5HTML, PHP 5
Description 

Author

This package can generate HTML tables from cell data and attributes.

The main class can compose the definition of a HTML table using a fluent interface to define the table headers and body cell data from arrays, attributes, CSS styles.

The class generates HTML for the composed table is returned as a HTML string.

A separate class can also compose the table definition in terms of table columns.

Picture of Nuno Chaves
  Performance   Level  
Name: Nuno Chaves <contact>
Classes: 4 packages by
Country: Portugal Portugal
Age: 41
All time rank: 7929 in Portugal Portugal
Week rank: 569 Up10 in Portugal Portugal Down

Example

<?php

require '../../vendor/autoload.php';

$table = \Jupitern\Table\Table::instance()
    ->
setData([
        [
'id' => 1, 'name' => 'Peter', 'age' => '35', 'phone' => '961 168 851'],
        [
'id' => 2, 'name' => 'John', 'age' => '44', 'phone' => '169 899 742'],
        [
'id' => 3, 'name' => 'Peter', 'age' => '22', 'phone' => '737 853 346'],
        [
'id' => 4, 'name' => 'Clark', 'age' => '34', 'phone' => '169 574 741'],
        [
'id' => 5, 'name' => 'Alex', 'age' => '65', 'phone' => '732 753 467'],
    ])
// ->attrs('table', ['class' => 'table table-bordered', 'cellspacing' => '0'])
   
->attr('table', 'id', 'demoTable')
    ->
attr('table', 'class', 'table table-bordered table-striped table-hover')
    ->
attr('table', 'cellspacing', '0')
    ->
attr('table', 'width', '100%')
    ->
attr('tr', 'data-text', 'bla bla bla bla bla')
    ->
attr('tr', 'data-id', function($row) {
        return
'row-' . $row['id'];
    })
    ->
css('tr', 'background-color', 'red')
    ->
column()
        ->
title('Name')
        ->
value(function ($row) {
            return
rand(1,10)%2 ? '<b>'.$row['name'].'</b>' : $row['name'];
        })
        ->
attr('td', 'data-text', 'bla bla bla')
        ->
css('th', 'color', 'green')
        ->
css('td', 'width', '50%')
        ->
css('td', 'background-color', '#ccc')
    ->
add()
    ->
column()
        ->
title('Age')
        ->
value('age')
        ->
css('th', 'color', 'red')
        ->
css('td', 'width', '20%')
    ->
add()
    ->
column('Phone')
        ->
value('phone')
        ->
css('td', 'color', 'red')
        ->
css('td', 'width', '20%')
    ->
add()
    ->
column()
        ->
value(function ($row) {
            return
'<a href="country/'. $row['id'] .'">edit</a>';
        })
        ->
css('td', 'width', '10%')
    ->
add();
?>


<html>
    <head>
        <!-- JQUERY -->
        <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>

        <!-- DATATABLES -->
        <link href="https://cdn.datatables.net/1.10.12/css/jquery.dataTables.min.css" rel="stylesheet">
        <script src="https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script>

        <!-- Bootstrap and Datatables Bootstrap theme (OPTIONAL) -->
        <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
        <link href="https://cdn.datatables.net/1.10.12/css/dataTables.bootstrap.min.css" rel="stylesheet">
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

        <script type="text/javascript">

            $(document).ready(function(){
                $('#demoTable').DataTable();
            });

        </script>
    </head>
    <body>
        <div style="width: 50%; margin: 30px;">
            <?php $table->render(); ?>
</div>
    </body>
</html>


  Files folder image Files  
File Role Description
Files folder imagesrc (2 directories)
Accessible without login Plain text file composer.json Data Auxiliary data
Accessible without login Plain text file README.md Doc. Documentation

  Files folder image Files  /  src  
File Role Description
Files folder imageExamples (2 files)
Files folder imageTable (3 files)

  Files folder image Files  /  src  /  Examples  
File Role Description
  Accessible without login Plain text file test1.php Example Example script
  Accessible without login Plain text file test2.php Example Example script

  Files folder image Files  /  src  /  Table  
File Role Description
  Plain text file Properties.php Class Class source
  Plain text file Table.php Class Class source
  Plain text file TableColumn.php Class Class source

 Version Control Unique User Downloads Download Rankings  
 100%
Total:124
This week:0
All time:9,392
This week:147Up