当前位置: 首页 > news >正文

php静态检测工具,PHP静态代码分析工具,可以检测未捕获的异常?

PHPLint似乎就是答案.例如,它解析

function some()

{

if (time() == 123) {

throw new Exception("I can't happen");

}

}

some();

,永远不会抛出异常(除非你过去),进入:

BEGIN parsing of test-cSdHoW

1: <?php

2:

3: function some()

4: {

5: if (time() == 123) {

6: throw new Exception("I can't happen");

throw new Exception("I can't happen");

\_ HERE

==== 6: notice: here generating exception(s) Exception

throw new Exception("I can't happen");

\_ HERE

==== 6: ERROR: exception(s) must be caught or declared to be thrown: Exception

7: }

8: }

9:

10: some();

==== 3: notice: guessed signature of the function `some()' as void()

some();

\_ HERE

==== 10: notice: here generating exception(s) Exception

some();

\_ HERE

==== 10: Warning: uncaught exception(s): Exception

END parsing of test-cSdHoW

==== ?: notice: unused package `dummy.php'

==== ?: notice: required module `standard'

Overall test results: 1 errors, 1 warnings.

所以这正是我要求的:)添加文件块并捕获异常会导致PHPLint不再出现错误或警告.

相关文章:

  • php 挂起一个请求一直执行,在后台运行进程挂起PHP pag
  • php设置cookie路径,php 设置cookie路径例子总结
  • 服务器被上传文件php,求助,哪位大神遇到过这种情况,linux服务器总是被上传这些文件...
  • php m grep gd,ubuntu – php5-gd显示在“php -i | grep -i gd“但不是在phpinfo();
  • php my global.h,11月13日任务 - 志明咖的个人空间 - OSCHINA - 中文开源技术交流社区...
  • php限制输入数字,如何使用javascript和php禁用数字输入类型
  • php7 curl 慢,PHP7无法加载curl模块
  • 二叉树建树java,二叉树的建树、遍历(先序、中序、后序、层次)(递归和非递归)--Java实现...
  • 集卡php源码,PHP自动售货发卡网源码 集成多种支付接口
  • q币充值php,腾讯Q币会员充值
  • php 里面的echo啥意思,echo的含义 echo 有哪些含义,有什么功能
  • python 类属性存放,保存到文件并加载python类的实例及其属性
  • windows没有mysql配置文件,关于Windows下无法在MySQL安装目录找到配置文件my.ini
  • oracle 2018 版本,为Oracle OpenWorld 2018做好准备
  • 热水器php2p3代表什么,热水器p1p2p3什么意思
  • Android Volley源码解析
  • Angular 响应式表单之下拉框
  • ES6 ...操作符
  • Java知识点总结(JavaIO-打印流)
  • mysql 5.6 原生Online DDL解析
  • python docx文档转html页面
  • Redux 中间件分析
  • vue2.0一起在懵逼的海洋里越陷越深(四)
  • 阿里云购买磁盘后挂载
  • 大型网站性能监测、分析与优化常见问题QA
  • 基于Javascript, Springboot的管理系统报表查询页面代码设计
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 精彩代码 vue.js
  • 前端之React实战:创建跨平台的项目架构
  • 三栏布局总结
  • 扫描识别控件Dynamic Web TWAIN v12.2发布,改进SSL证书
  • 世界上最简单的无等待算法(getAndIncrement)
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 吐槽Javascript系列二:数组中的splice和slice方法
  • 我的zsh配置, 2019最新方案
  • SAP CRM里Lead通过工作流自动创建Opportunity的原理讲解 ...
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • 扩展资源服务器解决oauth2 性能瓶颈
  • ​Java并发新构件之Exchanger
  • ​软考-高级-信息系统项目管理师教程 第四版【第23章-组织通用管理-思维导图】​
  • (bean配置类的注解开发)学习Spring的第十三天
  • (C++)栈的链式存储结构(出栈、入栈、判空、遍历、销毁)(数据结构与算法)
  • (Matalb时序预测)WOA-BP鲸鱼算法优化BP神经网络的多维时序回归预测
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (论文阅读31/100)Stacked hourglass networks for human pose estimation
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .net 使用ajax控件后如何调用前端脚本
  • .NET/C# 推荐一个我设计的缓存类型(适合缓存反射等耗性能的操作,附用法)
  • [ Linux 长征路第二篇] 基本指令head,tail,date,cal,find,grep,zip,tar,bc,unname
  • []C/C++读取串口接收到的数据程序
  • [④ADRV902x]: Digital Filter Configuration(发射端)
  • [acwing周赛复盘] 第 69 场周赛20220917
  • [BZOJ3223]文艺平衡树
  • [C++]类和对象【下】
  • [C++]模板与STL简介