Skip to content

Commit 56ec294

Browse files
committed
removed support for laravel, this is agnostic PHP lib
1 parent 826939f commit 56ec294

File tree

6 files changed

+147
-940
lines changed

6 files changed

+147
-940
lines changed

README.md

Lines changed: 48 additions & 172 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,12 @@
99

1010
###Docs
1111
[![Language-pt_BR](https://img.shields.io/badge/pt__BR-100%25-green.svg)](https://github.com/geekcom/phpjasper/blob/master/docs/pt_BR/LEIA-ME_pt_BR.md)
12-
[![Language-de_DE](https://img.shields.io/badge/de__DE-10%25-red.svg)](https://github.com/geekcom/phpjasper/blob/master/docs/de_DE/LESEN-MICH.md)
13-
1412

1513
###About
16-
1714
This package is the solution to compile and process JasperReports (.jrxml & .jasper files) just using PHP.
1815

16+
**Note:** PHPJasper Can be used regardless of your PHP Framework
17+
1918
**Note for Linux servers?**
2019

2120
Do not forget to grant permission 777 for the directory
@@ -153,16 +152,16 @@ use JasperPHP\JasperPHP;
153152

154153
$input = __DIR__ . '/vendor/geekcom/phpjasper/examples/hello_world.jasper';
155154
$output = __DIR__ . '/vendor/geekcom/phpjasper/examples';
155+
$options = [
156+
'format' => ['pdf', 'rtf']
157+
];
156158

157159
$jasper = new JasperPHP;
158160

159161
$jasper->process(
160-
$input, //input
161-
$output, //output
162-
['pdf', 'rtf'], //formats
163-
[], //parameters
164-
[], //data_source
165-
'en' //locale
162+
$input,
163+
$output,
164+
$options
166165
)->execute();
167166
```
168167

@@ -200,26 +199,27 @@ use JasperPHP\JasperPHP;
200199

201200
$input = '/your_input_path/your_report.jasper';
202201
$output = '/your_output_path';
203-
$format = 'pdf';
204-
$locale = 'en';
202+
$options = [
203+
'format' => ['pdf'],
204+
'locale' => 'en',
205+
'params' => [],
206+
'db_connection' => [
207+
'driver' => 'postgres',
208+
'username' => 'DB_USERNAME',
209+
'password' => 'DB_PASSWORD',
210+
'host' => 'DB_HOST',
211+
'database' => 'DB_DATABASE',
212+
'schema' => 'DB_SCHEMA',
213+
'port' => '5432'
214+
]
215+
];
205216

206217
$jasper = new JasperPHP;
207218

208219
$jasper->process(
209220
$input,
210221
$output,
211-
$format,
212-
[], //parameters
213-
[
214-
'driver' => 'postgres',
215-
'username' => 'DB_USERNAME',
216-
'password' => 'DB_PASSWORD',
217-
'host' => 'DB_HOST',
218-
'database' => 'DB_DATABASE',
219-
'schema' => 'DB_SCHEMA',
220-
'port' => '5432'
221-
],
222-
$locale
222+
$options
223223
)->execute();
224224
```
225225

@@ -230,37 +230,36 @@ For a complete list of locales see [Supported Locales](http://www.oracle.com/tec
230230
###Using MSSQL DataBase
231231

232232
```php
233-
234233
require __DIR__ . '/vendor/autoload.php';
235234

236235
use JasperPHP\JasperPHP;
237236

238237
$input = '/your_input_path/your_report.jasper or .jrxml';
239238
$output = '/your_output_path';
240-
$format = 'pdf';
241-
$locale = 'en';
242-
243-
$jdbc_dir = __DIR__ . '/vendor/geekcom/phpjasper/src/JasperStarter/jdbc/';
239+
$jdbc_dir = __DIR__ . '/vendor/geekcom/phpjasper/bin/jaspertarter/jdbc';
240+
$options = [
241+
'format' => ['pdf'],
242+
'locale' => 'en',
243+
'params' => [],
244+
'db_connection' => [
245+
'driver' => 'generic',
246+
'host' => '127.0.0.1',
247+
'port' => '1433',
248+
'database' => 'DataBaseName',
249+
'username' => 'UserName',
250+
'password' => 'password',
251+
'jdbc_driver' => 'com.microsoft.sqlserver.jdbc.SQLServerDriver',
252+
'jdbc_url' => 'jdbc:sqlserver://127.0.0.1:1433;databaseName=Teste',
253+
'jdbc_dir' => $jdbc_dir
254+
]
255+
];
244256

245257
$jasper = new JasperPHP;
246258

247259
$jasper->process(
248260
$input,
249261
$output,
250-
$format,
251-
[], //parameters
252-
[
253-
'driver' => 'generic',
254-
'host' => '127.0.0.1',
255-
'port' => '1433',
256-
'database' => 'DataBaseName',
257-
'username' => 'UserName',
258-
'password' => 'password',
259-
'jdbc_driver' => 'com.microsoft.sqlserver.jdbc.SQLServerDriver',
260-
'jdbc_url' => 'jdbc:sqlserver://127.0.0.1:1433;databaseName=Teste',
261-
'jdbc_dir' => $jdbc_dir
262-
],
263-
$locale
262+
$options
264263
)->execute();
265264
```
266265

@@ -307,10 +306,12 @@ Route::get('/reports', function () {
307306
$report->process(
308307
public_path() . '/report/hello_world.jrxml', //input
309308
public_path() . '/report/'.time().'_hello_world', //output
310-
['pdf', 'rtf', 'xml'], //formats
311-
[], //parameters
312-
[], //data_source
313-
'' //locale
309+
[
310+
'format' => ['pdf', 'rtf', 'xml'],
311+
'locale' => 'en',
312+
'params' => [],
313+
'db_connection' => []
314+
];
314315
)->execute();
315316
});
316317
```
@@ -323,131 +324,6 @@ Route::get('/reports', function () {
323324

324325
In this example we generate reports pdf, rtf and xml.
325326

326-
327-
###[optional] Reports from a xml in PHP/Laravel 5.*
328-
329-
See how easy it is to generate a report with a source an XML file:
330-
331-
```php
332-
333-
use JasperPHP\JasperPHP;
334-
335-
public function xmlToPdf()
336-
{
337-
$output = public_path() . '/report/'.time().'_CancelAck';
338-
$ext = "pdf";
339-
$data_file = public_path() . '/report/CancelAck.xml';
340-
$driver = 'xml';
341-
$xml_xpath = '/CancelResponse/CancelResult/ID';
342-
$locale = 'en';
343-
344-
$php_jasper = new JasperPHP;
345-
346-
$php_jasper->process(
347-
public_path() . '/report/CancelAck.jrxml', //input
348-
$output, //output
349-
[$ext], //formats
350-
[], //parameters
351-
['data_file' => $data_file, 'driver' => $driver, 'xml_xpath' => $xml_xpath], //data_source
352-
$locale //locale
353-
)->execute();
354-
355-
header('Content-Description: File Transfer');
356-
header('Content-Type: application/octet-stream');
357-
header('Content-Disposition: attachment; filename='.time().'_CancelAck.'.$ext);
358-
header('Content-Transfer-Encoding: binary');
359-
header('Expires: 0');
360-
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
361-
header('Content-Length: ' . filesize($output.'.'.$ext));
362-
flush();
363-
readfile($output.'.'.$ext);
364-
unlink($output.'.'.$ext);
365-
}
366-
```
367-
368-
369-
**Do not forget to write your route**
370-
371-
```php
372-
Route::get('reports/xml', 'ReportsController@xmlToPdf');
373-
```
374-
**and just go to**:
375-
376-
http://localhost:8000/reports/xml
377-
378-
**Note 3:**
379-
380-
To use the example above you must copy the sample files located at:
381-
382-
**\vendor\geekcom\phpjasper\examples\CancelAck.jrxml**
383-
and
384-
**\vendor\geekcom\phpjasper\examples\CancelAck.xml**
385-
to folder:
386-
**\public\report**
387-
388-
389-
###[optional] Reports from a JSON File in PHP/Laravel 5.*
390-
391-
See how easy it is to generate a report with a source an JSON file:
392-
393-
```php
394-
395-
use JasperPHP\JasperPHP;
396-
397-
public function jsonToPdf()
398-
{
399-
$output = public_path() . '/report/'.time().'_Contacts';
400-
$ext = "pdf";
401-
$driver = 'json';
402-
$json_query= "contacts.person";
403-
$data_file = public_path() . '/report/contacts.json';
404-
$locale = 'en';
405-
406-
$php_jasper = new JasperPHP;
407-
408-
$php_jasper->process(
409-
public_path() . '/report/json.jrxml', //input
410-
$output, //output
411-
[$ext], //formats
412-
[], //parameters
413-
['data_file' => $data_file, 'driver' => $driver, 'json_query' => $json_query],
414-
$locale
415-
)->execute();
416-
417-
header('Content-Description: File Transfer');
418-
header('Content-Type: application/octet-stream');
419-
header('Content-Disposition: attachment; filename='.time().'_Contacts.'.$ext);
420-
header('Content-Transfer-Encoding: binary');
421-
header('Expires: 0');
422-
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
423-
header('Content-Length: ' . filesize($output.'.'.$ext));
424-
flush();
425-
readfile($output.'.'.$ext);
426-
unlink($output.'.'.$ext);
427-
}
428-
```
429-
430-
**Do not forget to write your route**
431-
432-
```php
433-
Route::get('reports/json', 'ReportsController@jsonToPdf');
434-
```
435-
436-
**and just go to**:
437-
438-
http://localhost:8000/reports/json
439-
440-
**Note 4:**
441-
442-
To use the example above you must copy the sample files located at:
443-
444-
**\vendor\geekcom\phpjasper\examples\json.jrxml**
445-
and
446-
**\vendor\geekcom\phpjasper\examples\contacts.json**
447-
to folder:
448-
**\public\report**
449-
450-
451327
###MySQL
452328

453329
We ship the [MySQL connector](http://dev.mysql.com/downloads/connector/j/) (v5.1.39) in the `/src/JasperStarter/jdbc/` directory.
@@ -485,4 +361,4 @@ MIT
485361

486362
##[Contribute](https://github.com/geekcom/phpjasper/blob/master/CONTRIBUTING.md)
487363

488-
Contribute to the community PHP and Laravel, feel free to contribute, make a fork!!
364+
Contribute to the community PHP, make a fork!!

0 commit comments

Comments
 (0)