PHP-Parser是一个用PHP编写的PHP解析器(支持PHP 5.4以及更早的版本),这种特殊的解析器非常适合静态代码分析。该工具的目的就是简化静态代码分析和操作,它使程序员能够以编程的方式来处理任何应用程序的代码。

PHPSandbox将运行PHP作为独立进程的一种方式。 它为程序员提供一种外围脚本的保护,比如错误、崩溃、运行慢的脚本,或者不适合在代码中运行的脚本,都可作为独立进程来运行。

PHPMD这个工具能够探测PHP源代码中一些潜在的问题。例如:

可能存在的Bug

未达最佳标准的代码

过于复杂的语法

从未使用过的参数、方法、属性

PHPCPD是一个在代码中寻找类似模式的工具,使用它是为了在代码库中识别代码在何处被复制或粘贴。这是常规构建过程中一个非常有用的工具,它会帮助程序员分析代码,以避免在代码库中重复调用函数。

PHPCheckstyle是一个帮助PHP程序员检查代码和报告错误的工具,运行于PHP 5.0以及更高的版本。通过SVN钩子脚本的方式来调用PHPCheckstyle,可以强制代码必须符合预先设定的编码标准(比如PEAR编码标准),有助于在多人合作项目中提高代码整体质量。

Ubench是一个用于评测PHP代码执行时间和内存使用效率的开发库。使用方法如下:

require_once 'src/Ubench.php';

$bench = new Ubench;

$bench->start();

// Execute some code

$bench->end();

// Get elapsed time and memory

echo $bench->getTime(); // 156ms or 1.123s

echo $bench->getTime(true); // elapsed microtime in float

echo $bench->getTime(false, '%d%s'); // 156ms or 1s

echo $bench->getMemoryPeak(); // 152B or 90.00Kb or 15.23Mb

echo $bench->getMemoryPeak(true); // memory peak in bytes

echo $bench->getMemoryPeak(false, '%.3f%s'); // 152B or 90.152Kb or 15.234Mb

// Returns the memory usage at the end mark

echo $bench->getMemoryUsage(); // 152B or 90.00Kb or 15.23Mb

PHP Analyzer执行和编译器相同的流动分析,确保代码在每个潜在执行路径的每一行都执行了测试。这种特殊的工具帮助开发人员提高了自己的代码质量,从而确保了工作效率。

标签:PHP开发工具代码优化

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,尊重他人劳动成果

文章转载自:慧都控件网

php 代码分析软件,分析和解析PHP代码的7大工具相关推荐

  1. 分析和解析PHP代码的7大工具

    PHP已成为时下最热门的编程语言之一,然而却有许多PHP程序员苦恼找不到合适的工具来帮助自己分析和解析PHP代码.今天小编就为大家介绍几个非常不错的工具,来帮助程序员们提高自己的工作效率,一起来看看吧 ...

  2. Slub代码流程分析

    Slub代码流程分析: slub的代码晦涩难懂,在看书或者相关资料时看似简单,再去对照代码分析时会发现被打回原形,就像数学老师推导公式和自己去推导公式一样.因此,需要静下来心来仔细研读,看完原理之后分 ...

  3. NetSarang软件中nssock2.dll模块被植入恶意代码技术分析与防护方案

    NetSarang是一家提供安全连接解决方案的公司,该公司的产品主要包括Xmanager, Xmanager 3D, Xshell, Xftp 和Xlpd.最近,官方在2017年7月18日发布的软件被 ...

  4. 线索化二叉树(代码 、分析 、汇编)

    目录: 代码: 分析: 汇编: 代码: BTree.h BTree.c 二叉树(多路平衡搜索树) SeqList.h SeqList.c 顺序表 main.c #include <stdio.h ...

  5. 二叉树遍历(代码,分析,汇编)

    目录: 代码: 分析: 汇编: 代码: BTree.h BTree.c 二叉树(多路平衡搜索树) LinkQueue.h #ifndef _LINKQUEUE_H_ #define _LINKQUEU ...

  6. 二叉树(多路平衡搜索树)-(代码、分析、汇编)

    目录: 代码: 分析: 汇编: 代码: BTree.h #ifndef _BTREE_H_ #define _BTREE_H_#define BT_LEFT 0 //定义左子节点标识 #define ...

  7. 树存储结构(代码、分析、汇编)

    目录: 代码: 分析: 汇编: 代码: LinkList.h LinkList.c 线性表 GTree.h #ifndef _GTREE_H_ #define _GTREE_H_typedef voi ...

  8. N Queen(代码、分析、汇编)

    目录: 代码: 分析: 汇编: 代码: main.c #include <stdio.h>/* 程序描述:输出N*N中符合左右对角线与上下左右方向都没被使用的位置在每一行的所有情况使用检测 ...

  9. 递归-计算字符串长度(代码、分析、汇编)

    目录: 代码: 分析: 汇编: 代码: main.c #include <stdio.h>//该程序用递归计算字符串长度int strlen(const char* s) {if( s = ...

  10. 递归-输出字符串所有的组合情况(代码、分析、汇编)

    目录: 代码: 分析: 汇编: 代码: #include <stdio.h>/*程序描述:输出字符串所有的组合情况使用permutation函数进行将指定的下标值,与最大下标值这个范围的每 ...

最新文章

  1. 为什么大部分人做不了架构师?
  2. 悲催的IE6,悲催的壳浏览器,悲催的搜狗,悲催的360
  3. [密码学] 公钥密码基础与RSA
  4. boost::type_index模块实现存储有关类型的信息
  5. Storm集群的安装及简单使用
  6. linux系统优化篇之---top
  7. Spring框架IOC的实现
  8. 画圆角 - HTML5 Canvas 作图
  9. android通过经纬度获取地址,android之location 根据接口获取经纬度信息
  10. c#获取软件版本、windows用户名、windows用户目录、.net版本、windows版本等
  11. java调用萤石对讲_使用java封装萤石开放平台的接口
  12. c语言编程输出等腰三角形,C语言输出等腰三角形
  13. 新零售O2O商城系统要怎么开发,这些功能都要有
  14. AAAI2021 | 在手机上实现19FPS实时的YOLObile目标检测,准确率超高
  15. NPAPI 为什么会被 Chrome 禁用
  16. 好的重疾险原来长这样!你被骗了这么多年...
  17. 分布式系统高可用实战之限流器(Go 版本实现)
  18. Android初级教程短信防火墙
  19. 短期目标:三月、四月、五月
  20. 论文发表投稿流程的说明

热门文章

  1. 神舟七号飞船应用计算机进行飞行状态属于,“神舟七号”飞船应用计算机进行飞行状态调整属于()。...
  2. java机房温度监测的仿真_基于三维仿真的数据中心机房监控可视化管理
  3. en60204标准_《EN_60204_机械产品电气安全标准介绍》.pdf
  4. CAXA图文档2007服务器端,caxa电子图板2007
  5. 开心网倒闭变卖,创始人程炳皓反思的亲笔信全文
  6. 学习《华为基本法》(8):人力资源管理准则
  7. 通达(极限)OA2007SE第二版开源代码,注意哦,是100%开源代码,不是破解的!!!
  8. java毕业设计—— 基于java+JSP+SSH的网上购物系统设计与实现(毕业论文+程序源码)——网上购物系统
  9. Appfuse 开发环境搭建
  10. python判断是否有弹出窗口_使用Python爬取弹出窗口信息的实例