关闭

我的worktools集合们

标签: 数据库php终端接口工具终端数据库执行工具文件内容探查
5411人阅读 评论(0) 收藏 举报
分类:

由于日常工作中,大半时间要在终端里面。然后很多情况下,都需要对数据库查询到的结果进行分析,或者是对一个PHP接口进行检查。这段时间我都是靠着Google Chrome的json-handle插件来查看,效果其实还行,就是每次都要打开一个窗口,输入链接,再点击刷新,整个过程还是很耗时的。

然后,我就给自己做了几个工具。这样我就能在控制台下查看我想查看的信息了。

接口查看工具

PHP对于PHP接口文件在终端下的调试基本上是:

php xx.php

但是这样的话,输出效果很糟糕。格式什么的都不能保证,而且很乱。

这个时候其实要是可以在终端下输出格式良好的JSON数据,就不用再通过浏览器,输入链接,刷新。这一系列的操作了。

php xx.php | python -m json.tool

核心思路就是这样了,然后我又用Python包装了一下。大致的使用流程是这样的。

先来一个待测试的接口文件 test.php

<?php
  $result = array('姓名'=>'菜鸟', 'address'=>'MIT',         'users'=>array(201492323,4343234,4342524545,54    54)); 

  echo json_encode($result);

然后就可以通过interfacetools.py进行调试了。

python interfacetools.py test.php

接口调试工具

终端数据库执行器

最近在公司,每次都要通过查看代码中的数据库连接信息来远程连接到服务器。时间长了就显得很郁闷了。于是我又做了一个这样的工具。

数据库终端执行器

那么换张表会怎样呢?会不会出现乱序的问题呢?答案自然是不会的了。来看另一张表的运行情况会怎样。
换张表依然运行良好

下面来看下使用方法吧,相信会让你一下就明白了的。
SQLHelper帮助信息

清单工具

因为是在VIM下写代码,所以对一个很大的而且不熟悉的文件中有哪些类,类中有哪些方法。或者文件内定义了哪些函数,函数的参数是什么。这些都比较让人头疼。

然后再来一个让自己顺心点的工具吧,主要是借助了正则表达式。

主要有以下两类:

  • 接口文件: 对request中的action进行探查。
  • 类文件: 对类方法的探查。
    区分这连那个中文件的标志就是在这个工具中用一个type进行区分。

使用之前,先将本地服务跑起来。

python generate.py

然后在浏览器上输入链接,格式为:

http://localhost/generate?type=type&path=filepath

然后就可以方便的探查文件内的信息了。

type=action

接口文件探查

type=class

类文件的探查

总结

目前的话,时间有限,就先写这俩比较实用的工具,接下来我还想对redis和memcache的key相关做一个分析的工具,这样还能省去不少时间在无聊的操作上。

但是貌似输入这一大串字符还是有点啰嗦,所以可以借助:alias命令来简化操作。

最后附上GitHub的地址,有兴趣的可以自行下载源码,使用。


我的worktools集合

2
0
查看评论

感谢我的伙伴们

 昨天,为了给郑老师布置房间的事,我没弄明白事情的原委,只看到了现象,便不分青红皂白地批评了Make一顿,当然Snake和Lisa都一块挨了训。今天我得知,Make感冒一直没有好,几个月都是周末过来加班,昨天还在打点滴。不由一阵自责:我干嘛要那么着急?!我到底有多了解我的这些伙伴们?下午,...
  • yeka
  • yeka
  • 2006-09-18 22:53
  • 2177

第一篇:说说我的办公室生活(一)

      04年毕业,至今3年有多的工作时间,在这里做一点小小的有关办公室生活的回顾:)      04年5月8日,过了“五.一”7天长假就正式开始上班了,这个时候还没有毕业,不过毕业设计已经出来,...
  • gniyliu
  • gniyliu
  • 2007-08-12 11:10
  • 825

PRML读书笔记——混合模型与EM

如果观测变量上的边缘概率分布很复杂,可以引入潜在变量,得到观测变量和潜在变量的更加便于计算的联合概率分布。利用联合概率分布分析观测变量的概率。也就是说,潜在变量的引入是的复杂的概率分布可以由简单的分量组成。EM算法是找到具有潜在变量的模型的最大似然解的方法,本章的主要目的是讲解EM算法。首先通过Km...
  • hubin232
  • hubin232
  • 2017-04-14 20:15
  • 210

海贼王之伟大航路(DFS)

海贼王之伟大航路(DFS)
  • Ema1997
  • Ema1997
  • 2016-07-31 00:39
  • 384

027:集合:在我的世界里,你就是唯一!

笔记: 1、集合的创建 set1 = {1,2,3,4,5},注意,集合中重复的元素会被自动剔除。 2、集合是无序的,不支持索引。 3、可以利用工厂函数set()来创建一个集合:set2 = set([1,2,3,4,5]) 4、如何访问集合中的值: for语句进行遍历 ;in/not i...
  • junwei0206
  • junwei0206
  • 2015-04-09 21:21
  • 740

SpringMVC中的@ResponseBody

预备知识:@RequestMapping RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。 @RequestMapping(value = “/aaa”)//类级别,可以没有 public class...
  • whhahyy
  • whhahyy
  • 2015-09-14 10:40
  • 307

Python基础教程

简明 Python 教程 下一页 简明 Python 教程 Swaroop, C. H. 著 沈洁元 译 www.byteofpython.info  版本:1.20 A Byte of Python Copyright ©2003-2005 Swaroop C ...
  • u011236295
  • u011236295
  • 2014-08-24 13:21
  • 794

Netfilter入门

<br /> <br /> <br />参考资料<br />http://forum.byr.edu.cn/pc/pcshowcom.php?cid=139691<br />http://hi.baidu.com/tim...
  • jameslord
  • jameslord
  • 2011-04-21 23:20
  • 580

我赢让你成就java的梦想

Java语言位居“世界编程语言排行榜”第一位,仍为全球使用最广泛的编程语言最新的数据表明600万的程序员中,java开发程序员就占据25%,java目前拥有旺盛的生命力,而它强大的占有率,更是确定了自己的霸主地位。不可否认,Java是现在全球最时髦的开发工具之一, Java之所以被越来越多...
  • MamengMeng2015
  • MamengMeng2015
  • 2015-06-12 16:24
  • 363

BZOJ4502: 串

Description 兔子们在玩字符串的游戏。首先,它们拿出了一个字符串集合S,然后它们定义一个字 符串为“好”的,当且仅当它可以被分成非空的两段,其中每一段都是字符串集合S中某个字符串的前缀。 比如对于字符串集合{"abc","bca"},字符串...
  • wxh010910
  • wxh010910
  • 2017-04-10 19:29
  • 260
    个人资料
    • 访问:3235723次
    • 积分:34857
    • 等级:
    • 排名:第149名
    • 原创:357篇
    • 转载:35篇
    • 译文:9篇
    • 评论:733条
    友情链接
    我的偶像
    个人主页
      GitHub
    放松一下
    博客专栏
    最新评论
    版权信息
    去除本页广告
    图片炸弹装填中...

        
    [img=赞一个]http://bpic.588ku.com/element_origin_min_pic/16/12/12/0d96da96cf36505736c09d63832eaac8.jpg[/img]