JsonDBphp
是一個由原生PHP實現的文件數據庫,JsonDB只有一個文件,若是你不想使用龐大的數據庫系統,並且只須要單機功能,那麼JsonDB就是你最佳的選擇。 JsonDB只有初始化寫入和查詢功能,因此適用於比較固定的,數據量不大的數據,好比地區.html
項目地址:https://gitee.com/web/JsonDBmysql
由純原生PHP實現的json文件數據庫,將數據存儲爲json格式,不佔用mysql資源純以讀寫文件的形式查詢數據庫,寫法相似於thinkphp的查詢.支持壓縮存儲json大大減小空間佔用git
<?php header("content-Type: text/html; charset=utf-8"); include('JsonDB.class.php'); $db = new JsonDB('areazip'); $param=array(); $param['pid']=130; $param['id']=130; $param['_logic']='or'; $area=$db->select($param); $param=array(); $param['name']=array('like','河北'); $area=$db->select($param,1);//增長limit參數 提升效率 $param=array(); $param['id']=130; $areaname=$db->find($param,'name'); ?>
支持查詢語法:eq,neq,like,in,notin,gt,lt,egt,elt 可自行擴展web
_logic 定義 and 或 orsql
幾位同窗對效率問題提出質疑,以簡單的在本地測試了一下不知道合不合理下面是代碼thinkphp
$startTime = microtime(true); $array=array(); for($i=1; $i<=100000; $i++){ $array[]=array("id"=>$i,"name"=>"name".$i,"pinyin"=>$i,"pid"=>"0","status"=>"0","sort"=>"0","temp"=>"","letter"=>"\ufeffZ","level"=>"0","region"=>"0"); } $area=$db->add($array,1); $endTime = microtime(true); echo '添加成功,耗時: ' .(($endTime - $startTime)*1000) . 'ms'; //耗時: 597.57590293884ms 612.07795143127ms $startTime = microtime(true); $param=array(); $param['id']=100000; $area=$db->select($param); print_r($area); $endTime = microtime(true); echo '查詢成功,耗時: ' .(($endTime - $startTime)*1000) . 'ms'; //耗時: 1074.1360187531ms