php5 读取json数组,thinkphp5框架实现数据库读取的数据转换成json格式示例

thinkphp5框架实现数据库读取的数据转换成json格式示例,在线,数据,方法,框架,入门教程

thinkphp5框架实现数据库读取的数据转换成json格式示例

易采站长站,站长之家为您整理了thinkphp5框架实现数据库读取的数据转换成json格式示例的相关内容。

本文实例讲述了thinkphp5框架实现数据库读取的数据转换成json格式。分享给大家供大家参考,具体如下:

首先从数据库读数据,然后调用list_to_tree方法,再调用findchild方法,最后输出$category = DB::name('Category');$category_list = $category->select();$data=$this->list_to_tree($category_list,'category_id','category_parent_id','children'); //调用下面的方法$data=$this->findChild($data);header('Content-Type:application/json; charset=utf-8');exit(json_encode($data,JSON_UNESCAPED_UNICODE));// return $this->fetch('index');$this->ajaxReturn($data, 'JSON');

下面是两个方法:function findChild($arr){ static $tree=array(); foreach ($arr as $key=>$val){ $tree[]=$val; if (isset($val['_child'])){ $this->findChild($val['_child']); } } return $tree; } /** * 把返回的数据集转换成Tree * @access public * @param array $list 要转换的数据集 * @param string $pid parent标记字段 * @param string $level level标记字段 * @return array */ function list_to_tree($list, $pk='id',$pid = 'pid',$child = '_child',$root=0) { // 创建Tree $tree = array(); if(is_array($list)) { // 创建基于主键的数组引用 $refer = array(); foreach ($list as $key => $data) { $refer[$data[$pk]] =& $list[$key]; } foreach ($list as $key => $data) { // 判断是否存在parent $parentId = $data[$pid]; if ($root == $parentId) { $tree[] =& $list[$key]; }else{ if (isset($refer[$parentId])) { $parent =& $refer[$parentId]; $parent[$child][] =& $list[$key]; } } } } return $tree; }

转换之前的数据,直接从数据库读取,不能使用:

25496a02f51132b5dd4624c752df140a.png

转换之后的数据,可以被ztree树插件直接使用的json格式:

10745fef9bb101079a3b76d28c19574d.png

PS:这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:http://tools.jb51.net/code/json

JSON在线格式化工具:http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:http://tools.jb51.net/code/jsoncodeformat

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP中json格式数据操作技巧汇总》、《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。以上就是关于对thinkphp5框架实现数据库读取的数据转换成json格式示例的详细介绍。欢迎大家对thinkphp5框架实现数据库读取的数据转换成json格式示例内容提出宝贵意见

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Web服务器的日常维护是网管的一项重要工作,主要工作有:入侵检测、数据备份、服务 器优化、常见故障处理以及日志安排等一系统日常维护,服务器管理工作必须规严谨。 一、入侵检测和数据备份 (一)入侵检测工作 作为服务器的日常管理,入侵检测是一项非常重要的工作,在平常的检测过程中,主要 包含日常的服务器安全例行检查和遭到入侵时的入侵检查,也就是分为在入侵进行时的 安全检查和在入侵前后的安全检查。系统的安全性遵循木桶原理,木桶原理指的是:一 个木桶由许多块木板组成,如果组成木桶的这些木板长短不一,那么这个木桶的最大容 量不取决于长的木板,而取决于最短的那块木板。应用到安全方面也就是说系统的安全 性取决于系统中最脆弱的地方,这些地方是日常的安全检测的重点所在。 日常的安全检测 日常安全检测主要针对系统的安全性,工作主要按照以下步骤进行: 1、查看服务器状态: 打开进程管理器,查看服务器性能,观察CPU和存使用状况。查看是否有CPU和存占用过 高等异常情况。 2、检查当前进程情况 切换"任务管理器"到进程,查找有无可疑的应用程序或后台进程在运行。用进程管理器 查看进程时里面会有一项taskmgr,这个是进程管理器自身的进程。如果正在运行windo ws更新会有一项wuauclt.exe进程。对于拿不准的进程或者说不知道是服务器上哪个应用 程序开启的进程,可以在网络上搜索一下该进程名加以确定[进程知识库:.dofile./]。 通常的后门如果有进程的话,一般会取一个与系统进程类似的名称,如svch0st.exe,此 时要仔细辨别[通常迷惑手段是变字母o为数字0,变字母l为数字1] 3、检查系统 打开计算机管理,展开本地用户和组选项,查看组选项,查看administrators组是否添 加有新,检查是否有克隆。 4、查看当前端口开放情况 使用activeport,查看当前的端口连接情况,尤其是注意与外部连接着的端口情况,看 是否有未经允许的端口与外界在通信。如有,立即关闭该端口并记录下该端口对应的程 序并记录,将该程序转移到其他目录下存放以便后来分析。打开计算机管理==》软件环境 ==》正在运行任务[在此处可以查看进程管理器中看不到的隐藏进程],查看当前运行的程 序,如果有不明程序,记录下该程序的位置,打开任务管理器结束该进程,对于采用了 守护进程的后门等程序可尝试结束进程树,如仍然无法结束,在注册表中搜索该程序名 ,删除掉相关键值,切换到安全模式下删除掉相关的程序文件。 5、检查系统服务 运行services.msc,检查处于已启动状态的服务,查看是否有新加的未知服务并确定服 务的用途。对于不清楚的服务打开该服务的属性,查看该服务所对应的可执行文件是什 么,如果确定该文件是系统的正常使用的文件,可粗略放过。查看是否有其他正常开放 服务依存在该服务上,如果有,可以粗略的放过。如果无法确定该执行文件是否是系统 正常文件并且没有其他正常开放服务依存在该服务上,可暂时停止掉该服务,然后测试 下各种应用是否正常。对于一些后门由于采用了hook系统API技术,添加的服务项目在服 务管理器中是无法看到的,这时需要打开注册表中的HKEY_LOCAL_MACHINE—SYSTEM—Curr entControlSet—Services项进行查找,通过查看各服务的名称、对应的执行文件来确定 是否是后门、木马程序等。 6、查看相关日志 运行eventvwr.msc,粗略检查系统中的相关日志记录。在查看时在对应的日志记录上点 右键选"属性",在"筛选器"中设置一个日志筛选器,只选择错误、警告,查看日志的来 源和具体描述信息。对于出现的错误如能在服务器常见故障排除中找到解决办法则依照 该办法处理该问题,如果无解决办法则记录下该问题,详细记录下事件来源、ID号和具 体描述信息,以便找到问题解决的办法。 7、检查系统文件 主要检查系统盘的exe和dll文件,建议系统安装完毕之后用dir *.exe /s >1.txt将C盘所有的exe文件列表保存下来,然后每次检查的时候再用该命令生成一份当 时的列表,用fc比较两个文件,同样如此针对dll文件做相关检查。需要注意的是打补丁 或者安装软件后重新生成一次原始列表。检查相关系统文件是否被替换或系统中是否被 安装了木马后门等恶意程序。必要时可运行一次杀毒程序对系统盘进行一次扫描处理。 8、检查安全策略是否更改 打开本地连接的属性,查看"常规"中是否只勾选了"TCP/IP协议",打开"TCP/IP"协议设 置,点"高级"==》"选项",查看"IP安全机制"是否是设定的IP策略,查看"TCP/IP"筛选允 许的端口有没有被更改。打开"管理工具"=》"本地安全策略",查看目前使用的IP安全策 略是否发生更改。 9、检查目录权限 重点查

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值