Skip to content

Commit 73d8faf

Browse files
Added Example 04.
1 parent a57203c commit 73d8faf

File tree

3 files changed

+111
-0
lines changed

3 files changed

+111
-0
lines changed

README.md

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,81 @@ Output:
6262

6363
![...](screenshots/example-02.png)
6464

65+
[Example 3](src/Examples/example-03.php):
66+
67+
```php
68+
<?php
69+
70+
namespace App\Http\Controllers;
71+
72+
use App\User;
73+
use App\Http\Controllers\Controller;
74+
use GentritAbazi\PhpSpreadsheetExcel\Services\PhpSpreadsheetExcelService;
75+
76+
class TestController extends Controller
77+
{
78+
public function index()
79+
{
80+
$columns = ['Id', 'Name', 'Email'];
81+
$rows = User::get()->toArray();
82+
$config = ['columns_autosize' => true];
83+
84+
$spreadsheetExcel = new PhpSpreadsheetExcelService();
85+
$spreadsheetExcel->createSheet('Sheet 1', $columns, $rows, $config);
86+
$spreadsheetExcel->download('file.xlsx');
87+
}
88+
}
89+
```
90+
91+
Output:
92+
93+
![...](screenshots/example-04.png)
94+
95+
[Example 3](src/Examples/example-04.php):
96+
97+
```php
98+
<?php
99+
100+
namespace App\Http\Controllers;
101+
102+
use App\User;
103+
use App\Http\Controllers\Controller;
104+
use GentritAbazi\PhpSpreadsheetExcel\Services\PhpSpreadsheetExcelService;
105+
106+
class TestController extends Controller
107+
{
108+
public function index()
109+
{
110+
$columns = ['Id', 'Name', 'Email'];
111+
$rows = User::get();
112+
$config = ['columns_autosize' => true];
113+
114+
$parsedRows = $rows->map(function($row) {
115+
$parsedRow['id'] = ['value' => $row['id']];
116+
$parsedRow['name'] = ['value' => $row['name']];
117+
$parsedRow['email'] = ['value' => $row['email']];
118+
119+
// Style row - https://phpspreadsheet.readthedocs.io/en/latest/topics/recipes/#styles
120+
if($row['name'] == 'Gentrit') {
121+
$parsedRow['name']['style'] = [
122+
'font' => ['color' => ['rgb' => 'FF0000']]
123+
];
124+
}
125+
126+
return $parsedRow;
127+
});
128+
129+
$spreadsheetExcel = new PhpSpreadsheetExcelService();
130+
$spreadsheetExcel->createSheet('Sheet 1', $columns, $parsedRows, $config);
131+
$spreadsheetExcel->download('file.xlsx');
132+
}
133+
}
134+
```
135+
136+
Output:
137+
138+
![...](screenshots/example-04.png)
139+
65140
### Available Functions
66141
* stream.
67142
* streamAsCsv.

screenshots/example-04.png

46.9 KB
Loading

src/Examples/example-04.php

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
<?php
2+
3+
namespace App\Http\Controllers;
4+
5+
use App\User;
6+
use App\Http\Controllers\Controller;
7+
use GentritAbazi\PhpSpreadsheetExcel\Services\PhpSpreadsheetExcelService;
8+
9+
class TestController extends Controller
10+
{
11+
public function index()
12+
{
13+
$columns = ['Id', 'Name', 'Email'];
14+
$rows = User::get();
15+
$config = ['columns_autosize' => true];
16+
17+
$parsedRows = $rows->map(function($row) {
18+
$parsedRow['id'] = ['value' => $row['id']];
19+
$parsedRow['name'] = ['value' => $row['name']];
20+
$parsedRow['email'] = ['value' => $row['email']];
21+
22+
// Style row - https://phpspreadsheet.readthedocs.io/en/latest/topics/recipes/#styles
23+
if($row['name'] == 'Gentrit') {
24+
$parsedRow['name']['style'] = [
25+
'font' => ['color' => ['rgb' => 'FF0000']]
26+
];
27+
}
28+
29+
return $parsedRow;
30+
});
31+
32+
$spreadsheetExcel = new PhpSpreadsheetExcelService();
33+
$spreadsheetExcel->createSheet('Sheet 1', $columns, $parsedRows, $config);
34+
$spreadsheetExcel->download('file.xlsx');
35+
}
36+
}

0 commit comments

Comments
 (0)