找出关联的 div

问题描述

我知道这是一个非常愚蠢的问题,但我想知道是否有一种方法可以使用 PHPStorm 工具或浏览器界面来查找 <div> 标签标签的结尾相关联。

如果你有任何提示,谢谢,因为我在一些 PHP 的回声中得到了很多 div,我迷路了。

顺便说一下,我的代码是这样的。

if (isset($city_name) || (isset($longitude) && isset($latitude)) || isset($country_code)) {
    echo '<div class="row align-items-center">';
    echo '<div class="city_informations col-7 border border-primary">';

    if (isset($city_name)) echo '<div class="row"><div class="col font-weight-bolder"><img src="img/geo-alt.svg"/> ' . strtoupper($city_name) . '</div></div>';
    if (isset($country_code)) echo '<div class="row"><div class="col font-weight-bold"><img src="https://flagcdn.com/16x12/' . strtolower($country_code) . '.png"> ' . $country_code . '</div></div>';

    if (isset($longitude)) echo '<div class="row"><div class="col"><img src="img/globe2.svg"/> <span class="font-weight-bold">Long.</span>  ' . round($longitude,2) . " &nbsp&nbsp <span class='font-weight-bold'>Lat.</span> " . round($latitude,2) . '</div></div>';
    if (isset($timezone)) echo '<div class="row"><div class="col"><img src="img/clock.svg"/> <span class="font-weight-bold">' . strtolower(ltrim(date('g:i A',(time() + 3600 * (int)$diff_time)))) . '</span> (' . $timezone . ')</div></div>';

    echo '</div>';
}

解决方法

PhpStorm 能够自动检测字符串中的语言,并将提供语法突出显示和一定数量的代码智能。但是,它不会将字符串文字中的 HTML 视为文档结构的一部分。您可以使用如下代码片段进行验证:

<div id="test1">
    <span></span>
</div>
<?php
echo '<div id="test2">
    <span></span>
</div>';
?>
<div id="test3">
    <span></span>
</div>

“结构”侧窗格将仅反映不属于 PHP 字符串的两个 DIV:

Structure/ HTML

这是该功能的进展。如果您需要高级 HTML 逻辑,最好编写文字 HTML,在这种情况下,您可以使用 Move Caret to Matching Brace action

,

对于面临同样问题的程序员,我找到了解决方案:

我在浏览器上显示页面源代码,然后将其复制到像 this one 这样的 html 格式化程序中。

然后我可以很容易地看到哪个 div 是打开的而不是关闭的,没有所有的 PHP 回显条件等。

还是谢谢!