Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- function init($database,$tabel)
- {
- if(!is_dir($database))mkdir($database);
- if(!is_dir($database."/".$tabel))mkdir($database."/".$tabel);
- }
- function scandir_recursive($path){
- $f=scandir($path,1);
- $hasil="";
- for($i=0;$i<count($f);$i++){
- if(is_dir($path."/".$f[$i]) && $f[$i]!="." && $f[$i]!=".."){
- $hasil.=scandir_recursive($path."/".$f[$i]);
- }elseif(is_file($path."/".$f[$i])){
- $hasil.=$f[$i]."/";
- }
- }
- return $hasil;
- }
- function getrows($database,$tabel,$row)
- {
- $path="$database/$tabel";
- $hasil=scandir_recursive($path);
- $hasil=explode("/",$hasil);
- for($i=0;$i<count($hasil);$i++){
- if($hasil[$i]!="")$hasilx[]=explode(".",$hasil[$i])[0];
- }
- return $hasilx;
- }
- function rowid($database,$tabel,$row)
- {
- $f=getrows($database,$tabel,$row);
- if(isset($f[($row-1)])){$hasil=$f[($row-1)];}else{$hasil=null;}
- return $hasil;
- }
- function browse($database,$tabel,$start,$end)
- {
- init($database,$tabel);
- for($i=$start;$i<=$end;$i++)
- {
- $h=read($database,$tabel,$i);
- if($h!=null)$hasil[]=$h;
- }
- return $hasil;
- }
- function edit($database,$tabel,$baris,$data)
- {
- init($database,$tabel);
- $baris=rowid($database,$tabel,$baris);
- if($baris<2)$baris=time();
- $tahun=date("Y",$baris);
- $bulan=date("n",$baris);
- $tgl=date("j",$baris);
- $data=serialize($data);
- if(!is_dir($database."/".$tabel."/".$tahun."/".$bulan."/".$tgl))mkdir($database."/".$tabel."/".$tahun."/".$bulan."/".$tgl,0777,true);
- return file_put_contents($database."/".$tabel."/".$tahun."/".$bulan."/".$tgl."/".$baris.".row",$data);
- }
- function read($database,$tabel,$baris)
- {
- init($database,$tabel);
- $baris=rowid($database,$tabel,$baris);
- if($baris<1)return null;
- $tahun=date("Y",$baris);
- $bulan=date("n",$baris);
- $tgl=date("j",$baris);
- $data=file_get_contents($database."/".$tabel."/".$tahun."/".$bulan."/".$tgl."/".$baris.".row");
- $data=unserialize($data);
- return $data;
- }
- function delete($database,$tabel,$baris)
- {
- init($database,$tabel);
- $baris=rowid($database,$tabel,$baris);
- $tahun=date("Y",$baris);
- $bulan=date("n",$baris);
- $tgl=date("j",$baris);
- if($baris>2)return unlink($database."/".$tabel."/$tahun/$bulan/$tgl/".$baris.".row");
- }
- function add($database,$tabel,$data)
- {
- init($database,$tabel);
- $nomor=total($database,$tabel)+1;
- return edit($database,$tabel,$nomor,$data);
- }
- function total($database,$tabel)
- {
- init($database,$tabel);
- $f=getrows($database,$tabel,"all");
- return count($f);
- }
- function search($database,$tabel,$kolom,$keyword)
- {
- init($database,$tabel);
- if(is_array($kolom))
- {
- return cari_gabungan($database,$tabel,$kolom,$keyword);
- }
- else
- {
- for($i=1;$i<=total($database,$tabel);$i++)
- {
- $hasil[$i]="";
- $data=read($database,$tabel,$i);
- $tmpkey=explode(" ",$keyword);
- for($j=0;$j<count($tmpkey);$j++)
- {
- $anu=explode($tmpkey[$j],$data[$kolom]);
- if(count($anu)>1){$hasil[$i]=$hasil[$i]+count($anu)-1;}
- }
- if(trim($hasil[$i])==""){unset($hasil[$i]);}
- }
- return $hasil;
- }
- }
- function cari_gabungan($database,$tabel,$kolom,$keyword)
- {
- init($database,$tabel);
- for($i=1;$i<=total($database,$tabel);$i++)
- {
- $hasil[$i]="";
- $data=read($database,$tabel,$i);
- $kol="";
- for($j=0;$j<count($kolom);$j++)
- {
- $kol=$kol.$data[$kolom[$j]];
- }
- $key=explode(" ",trim($keyword));
- for($k=0;$k<count($key);$k++)
- {
- $kol=@explode($key[$k],$kol);
- if(count($kol)>1)
- {
- $hasil[$i]=$hasil[$i]+count($kol)-1;
- }
- }
- if(trim($hasil[$i])=="")unset($hasil[$i]);
- }
- return $hasil;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement