JsonDB php json数据库 NoSql
项目介绍
JsonDB
是一个由原生PHP实现的文件数据库,JsonDB只有一个文件,如果你不想使用庞大的数据库系统,而且只需要单机功能,那么JsonDB就是你最佳的选择。 JsonDB只有初始化写入和查询功能,所以适用于比较固定的,数据量不大的数据,比如地区.
项目地址:https://gitee.com/web/JsonDB
软件架构
由纯原生PHP实现的json文件数据库,将数据存储为json格式,不占用mysql资源纯以读写文件的形式查询数据库,写法类似于thinkphp的查询.支持压缩存储json大大减少空间占用
使用说明
<?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 可自行扩展
_logic 定义 and 或 or
效率测试
几位同学对效率问题提出质疑,以简单的在本地测试了一下不知道合不合理下面是代码
$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
转载于:https://my.oschina.net/xiaogg/blog/1865910
JsonDB php json数据库 NoSql相关推荐
- 非关系型数据库NoSQL的崛起
非关系型数据库NoSQL的崛起 <连线>杂志网络版近日刊载文章,对NoSQL(非关系型数据库)的来源与历史进行了追溯.文章主要介绍了最古老的NoSQL数据库之一CouchDB,这种数据库的 ...
- api ajax解析json数据库,api ajax解析json数据库
api ajax解析json数据库 内容精选 换一换 华为云帮助中心,为用户提供产品简介.价格说明.购买指南.用户指南.API参考.最佳实践.常见问题.视频帮助等技术文档,帮助您快速上手使用华为云服务 ...
- 分享:RethinkDB 1.3 发布,分布式 JSON 数据库
RethinkDB 1.3 发布,分布式 JSON 数据库 http://www.oschina.net/news/36001/rethinkdb-1-3
- Python:在小型项目中使用JSON数据库的利器——TinyDB
hello,大家好,我是wangzirui32,今天来教大家如何使用TinyDB来管理JSON数据库,开始学习吧! 学习目录 1. pip安装 2. 创建JSON数据库 3. JSON数据库表操作 3 ...
- 常见非关系型数据库(NoSQL)推荐介绍
2019独角兽企业重金招聘Python工程师标准>>> 随着互联网web2.0网站的兴起,非关系型的数据库现在成了一个极其热门的新领域, 非关系数据库产品的发展非常迅速.而传统的关系 ...
- 【云计算与大数据技术】分布式数据库NoSQL中KV、列式、图、文档数据库的讲解(图文解释 超详细)
一.NoSQL数据库概述 NoSQL泛指非关系型数据库,相对于传统关系型数据库,NoSQL有着更复杂的分类,包括KV数据库,文档数据库,列式数据库以及图数据库等等,这些类型的数据库能够更好的适应复杂类 ...
- 常见的几个非关系型数据库(NoSQL)、非关系型和关系型的区别
目录 非关系型数据库的特点 -------------------------------. 1.关系型数据库 ------------------------------------ 2. 关系型 ...
- 关系型数据库MySql与非关系型数据库NoSql
云计算背后的秘密:NoSQL诞生的原因和优缺点 我本来一直觉得NoSQL其实很容易理解的,我本身也已经对NoSQL有了非常深入的研究,但是在最近准备YunTable的Chart的时候,发现NoSQL不 ...
- html5展示json数据库,显示数据在html5从数据库使用javascript和json
我想从MySQL数据库显示在html中的列表.要从MySQL获取数据我使用json和javascript.但它什么也没有显示!显示数据在html5从数据库使用javascript和json 我的HTM ...
最新文章
- 你必须掌握的 21 个 Java 核心技术!
- java io 网络编程_[笔面] Java IO和网络编程相关面试
- 图像处理(一)——使用matlab放缩图像
- 【十二省联考2019】皮配【分部dp】
- 信息学奥赛一本通C++语言——1046:判断一个数能否同时被3和5整除
- python实现文件传输_Python使用socket实现简单的文件传输并校验
- php smarty php函数,smarty中使用php函数的方法
- 并行开发的基本概念及两个重要的定律
- mysql order by 语句_Mysql优化order by语句的方法详解
- knife4j--api请求参数不一致问题
- 粒子群对函数的优化 matlab,编译通过
- 技术人员就不要当资金股东了
- 电子邮件服务器怎样匿名转发功能,技巧:你为什么不能匿名发送电子邮件
- Java UI设计 计算三角形周长
- 计算机职业访谈ppt,大学职业生涯人物访谈.ppt
- 对图像作LUT处理是什么意思
- 鸿蒙招聘店铺主是真的吗,为什么很多店铺门口贴着招聘,然而进去问都说招满了,但是招聘的内容还是放在那不收走?...
- 算法:递归(汉诺塔)
- PAT 1063 计算谱半径
- 【U8+】总账期初余额开账按钮是灰色的
热门文章
- 算法1-排序LowB三人组
- iOS设计模式(02):单例模式
- 大地震前有三个明显征兆:1.井水异常2.牲畜反应异常3.专家出来辟谣。但是细心网友指出,第三和第二重复了。...
- 在.NET 3.5 平台上使用LINQ to SQL创建三层/多层Web应用系统(Part2) 转
- hdu5108枚举因子求最小的m
- 计算机网络-IP地址的分类
- 【C 语言】结构体 ( 结构体中嵌套二级指针 | 为 结构体内的二级指针成员 分配内存 | 释放 结构体内的二级指针成员 内存 )
- 【FFmpeg】使用 FFmpeg 处理音视频格式转换流程 ( 解复用 | 解码 | 帧处理 | 编码 | 复用 )
- 【Android 属性动画】属性动画 Property Animation 简介 ( 属性动画简介 | 属性动画特性 )
- ECharts简单入门demo