-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsimple-example.php
More file actions
59 lines (47 loc) · 1.94 KB
/
simple-example.php
File metadata and controls
59 lines (47 loc) · 1.94 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php
/**
* Simple Table Example - Quick start guide for WebFiori CLI Table feature
*/
require_once '../../vendor/autoload.php';
// Include table classes
require_once '../../WebFiori/Cli/Table/TableStyle.php';
require_once '../../WebFiori/Cli/Table/Column.php';
require_once '../../WebFiori/Cli/Table/TableData.php';
require_once '../../WebFiori/Cli/Table/ColumnCalculator.php';
require_once '../../WebFiori/Cli/Table/TableFormatter.php';
require_once '../../WebFiori/Cli/Table/TableTheme.php';
require_once '../../WebFiori/Cli/Table/TableRenderer.php';
require_once '../../WebFiori/Cli/Table/TableBuilder.php';
use WebFiori\Cli\Table\TableBuilder;
echo "🚀 WebFiori CLI Table - Simple Usage Examples\n";
echo "==============================================\n\n";
// Example 1: Basic table
echo "Example 1: Basic Table\n";
echo "----------------------\n";
$basicTable = TableBuilder::create()
->setHeaders(['Name', 'Age', 'City'])
->addRow(['Ahmed Hassan', 30, 'Cairo'])
->addRow(['Sarah Johnson', 25, 'Los Angeles'])
->addRow(['Omar Al-Rashid', 35, 'Dubai']);
echo $basicTable->render()."\n\n";
// Example 2: Formatted table with colors
echo "Example 2: Formatted Table with Colors\n";
echo "--------------------------------------\n";
$formattedTable = TableBuilder::create()
->setHeaders(['Product', 'Price', 'Status'])
->addRow(['Laptop', 1299.99, 'Available'])
->addRow(['Mouse', 29.99, 'Out of Stock'])
->addRow(['Keyboard', 89.99, 'Available'])
->configureColumn('Price', [
'align' => 'right',
'formatter' => fn($value) => '$'.number_format($value, 2)
])
->colorizeColumn('Status', function ($value) {
return match ($value) {
'Available' => ['color' => 'green', 'bold' => true],
'Out of Stock' => ['color' => 'red', 'bold' => true],
default => []
};
});
echo $formattedTable->render()."\n\n";
echo "✨ Simple examples completed successfully!\n";