PhpStorm 2021.3 Help

分析数据流

介绍

PhpStorm 提供数据流分析功能来帮助您进行代码考古——更好地理解继承的项目代码、解释代码的复杂部分、查找源代码中的瓶颈等等。

具体来说,数据流至/来自此处的功能允许您:

  • 查看分配给变量的值来自何处。

  • 找出变量可以具有的所有可能值。

  • 找出表达式\变量\方法参数可以流入的位置。

如果您想追溯传递给插入符号的参数的值,您可以使用分析 |创建源代码的切片视图。数据流到此处命令。此外,使用分析 | Dataflow from Here命令您可以找到表达式可以流入的位置。每个数据流分析的结果都显示在分析数据流工具窗口的专用选项卡中。

分析数据流

分析传入/传出交易品种的数据流:

  1. 打开所需的文件进行编辑,请参阅 使用插入符号导航

  2. 将插入符号放在要分析的符号上(表达式\变量\方法参数)。

  3. 在主菜单或上下文菜单中,选择 代码 | 分析数据流到此处代码 | 根据您的目的从此处分析数据流。

  4. 指定分析范围并选择是否要忽略来自测试代码的所有值。

  5. 单击确定。在专用的分析数据流工具窗口中查看分析结果。

检查数据流分析的结果

以下部分简要介绍了如何“读取”数据流分析结果。

数据流到这里

  • 展开树以挖掘导致符号的分配和方法调用链。带有灰色背景的节点表示重复(在树中已存在于另一个位置的用法)。下图显示了Dataflow to Here分析结果的示例:

    ps_dataflow_tree.png

    此视图中的值按以下方向流动:dataflow.php$result中字段的值来自赋值语句,其中使用和参数调用的方法返回。的值来自使用和参数等调用的方法。$result = Calculate($p,$s)Calculate($m,$n)$p$s$f$fDivision($a,$b)$d$e

  • 要查看分配和方法调用的代码,请按显示差异图标切换按钮。PhpStorm 添加了一个预览窗格,其中显示了当前在树中选择的分配或调用的代码,代码突出显示:

    ps_dataflow_preview.png
  • 要导航到分配或调用的源代码,请双击树中的相关行。

来自这里的数据流

分层视图类似于Dataflow to Here分析的结果,但值的流动方向相反。

最后修改时间:2021 年 8 月 26 日