Sederhanakan pemrosesan sisi server datatables Anda dengan mudah menggunakan pustaka PHP kami yang sangat cepat, sehingga menyederhanakan alur kerja Anda dengan lancar. Demo Langsung
CATATAN: versi 2.0+ memerlukan php 7.1.3+ (versi yang didukung php)
Cara yang disarankan untuk menginstal perpustakaan adalah dengan Komposer
Jika Anda belum mulai menggunakan composer, saya sangat menyarankan Anda untuk menggunakannya.
Letakkan file bernama composer.json
di root proyek Anda, yang berisi informasi ini:
{
"require": {
"ozdemir/ datatables ": "2.*"
}
}
Dan kemudian jalankan:
composer install
Atau jalankan saja:
composer require ozdemir/ datatables
Tambahkan pemuat otomatis ke proyek Anda:
<?php
require_once ' vendor/autoload.php ' ;
Anda sekarang siap untuk mulai menggunakan perpustakaan php datatables .
<?php
require_once ' vendor/autoload.php ' ;
use Ozdemir datatables datatables ;
use Ozdemir datatables DB MySQL ;
$ config = [ ' host ' => ' localhost ' ,
' port ' => ' 3306 ' ,
' username ' => ' homestead ' ,
' password ' => ' secret ' ,
' database ' => ' sakila ' ];
$ dt = new datatables ( new MySQL ( $ config ) );
$ dt -> query ( ' Select film_id, title, description from film ' );
echo $ dt -> generate ();
Jika Anda menggunakan framework php seperti codeigniter atau laravel, Anda dapat menggunakan adaptor database yang relevan.
// Codeigniter 4 Example
<?php
namespace App Controllers ;
use Config Database ;
use Ozdemir datatables datatables ;
use Ozdemir datatables DB Codeigniter4Adapter ;
class Home extends BaseController
{
public function index ()
{
return view ( ' index ' );
}
public function ajax ()
{
// CI 4 builder class
$ db = Database:: connect ();
$ builder = $ db -> table ( ' Track ' );
$ builder -> select ( ' TrackId, Name, UnitPrice ' );
// datatables Php Library
$ datatables = new datatables ( new Codeigniter4Adapter );
// using CI4 Builder
$ datatables -> query ( $ builder );
// alternatively plain sql
// $ datatables ->query('Select TrackId, Name, UnitPrice from Track');
return $ this -> response -> setJSON ( $ datatables -> generate ()-> toJson ());
}
}
// Laravel Example
<?php
// routes/web.php
use Ozdemir datatables datatables ;
use Ozdemir datatables DB LaravelAdapter ;
Route:: get ( ' /ajax/laravel ' , function () {
$ dt = new datatables ( new LaravelAdapter );
$ dt -> query (
Track:: query ()
-> select ([
' TrackId ' ,
' Track.Name ' ,
' Title as Album ' ,
' MediaType.Name as MediaType ' ,
' UnitPrice ' ,
' Milliseconds ' ,
' Bytes ' ,
])
-> join ( ' Album ' , ' Album.AlbumId ' , ' Track.AlbumId ' )
-> join ( ' MediaType ' , ' MediaType.MediaTypeId ' , ' Track.MediaTypeId ' )
); // same as the previous example, sql statement can be used.
return $ dt -> generate ();
});
Ini adalah daftar metode publik yang tersedia.
kueri($kueri) diperlukan
menghasilkan() diperlukan
keJson()
keArray()
tambahkan($kolom, fungsi( $baris ){})
edit($kolom, fungsi($baris){})
filter($kolom, fungsi(){})
sembunyikan($kolom)
setDistinctResponseFrom($kolom)
setRespon Berbeda($keluaran)
dapatkan Kolom()
dapatkan Kueri()
<?php
require_once ' vendor/autoload.php ' ;
use Ozdemir datatables datatables ;
use Ozdemir datatables DB SQLite ;
$ path = __DIR__ . ' /../path/to/database.db ' ;
$ dt = new datatables ( new SQLite ( $ path ) );
$ dt -> query ( ' Select id, name, email, age, address, plevel from users ' );
$ dt -> edit ( ' id ' , function ( $ data ){
// return a link.
return " <a href='user.php?id= " . $ data [ ' id ' ] . " '>edit</a> " ;
});
$ dt -> edit ( ' email ' , function ( $ data ){
// masks email : [email protected] => m***@mail.com
return preg_replace ( ' /(?<=.).(?=.*@)/u ' , ' * ' , $ data [ ' email ' ]);
});
$ dt -> edit ( ' address ' , function ( $ data ){
// checks user access.
$ current_user_plevel = 4 ;
if ( $ current_user_plevel > 2 && $ current_user_plevel > $ data [ ' plevel ' ]) {
return $ data [ ' address ' ];
}
return ' you are not authorized to view this column ' ;
});
$ dt -> hide ( ' plevel ' ); // hides 'plevel' column from the output
$ dt -> add ( ' action ' , function ( $ data ){
// returns a link in a new column
return " <a href='user.php?id= " . $ data [ ' id ' ] . " '>edit</a> " ;
});
$ dt -> filter ( ' age ' , function (){
// applies custom filtering.
return $ this -> between ( 15 , 30 );
});
echo $ dt -> generate ()-> toJson (); // same as 'echo $dt->generate()';
Komposer
datatables > 1,10
PHP > 7.1.3
Hak Cipta (c) 2015 Yusuf ÖZDEMİR, dirilis di bawah lisensi MIT