NetBeans:代码折叠未出现在某个PHP文件中

h4cxqtbf  于 2023-04-04  发布在  PHP
关注(0)|答案(9)|浏览(184)

我使用的是NetBeans IDE。通常,我项目中的每个PHP文件都有代码折叠:

但是,我的项目中有一个PHP文件没有代码折叠:

文件没有语法错误。我尝试重新启动NetBeans并重新打开项目,但折叠仍然不显示。可能是什么原因?

更多信息:

  • 我使用的是NetBeans IDE 7.0.1。
  • 文件的扩展名是.php,就像我项目中的所有PHP文件一样。
  • 在另一个具有完全相同内容的文件上,代码折叠出现。
xyhw6mcr

xyhw6mcr1#

@ sudhir chauhan:如果没有选择代码折叠,其他php文件就不会有折叠。
这是Netbeans的一个已知错误,非常烦人,在编辑PHP时偶尔也会发生。唯一的解决方案是保存文件,关闭Netbeans IDE,然后重新打开Netbeans。
此外,有时你展开代码,并点击重新折叠,你不能..要解决这个相关的问题,只需点击折叠外的一行(即上面的函数),然后点击“-”重新折叠代码。

pcww981p

pcww981p2#

这个问题在Netbeans 7.2.1中仍然存在,不仅在PHP中,而且在Java代码中也存在,对我来说有效的方法是取消选中[Use code fold:],如o0omycomputero0o的答案中所述,通过单击OK应用更改,然后重新选中[Use code folding:],并单击OK,它重新验证代码折叠到预期状态,无需IDE重新加载。

esyap4oy

esyap4oy3#

请按照以下步骤操作:
1)打开netbeans 2)select tool =〉options 3)select Editor tab and General sub tab 4)and check code fold复选框
查找所附图像的详细信息。

ma8fv8wu

ma8fv8wu4#

我发现了一件对我个人来说意义重大的事:
如果你有这样的评论<!-------- ------>
也就是说,* 多于2个破折号 * <!-- -->,那么netbeans似乎会感到困惑。
去掉多余的破折号,代码折叠就神奇地出现了。

cqoc49vn

cqoc49vn5#

如果是在netbean8中,你可以后藤工具〉选项〉编辑器〉折叠,选择语言为PHP(或者任何你发现不能正确折叠代码的语言),取消选中“启用代码折叠”,点击确定。然后进入工具〉选项〉编辑器〉折叠并选中“启用代码折叠”,点击确定,然后它可能会工作:)。

vpfxa7rd

vpfxa7rd6#

如果你正在处理一个.html文件,并且你正面临这个问题,请检查你的文档中是否有任何错误,因为Netbeans似乎在发现HTML标记中的语法错误时禁用代码折叠。
在我的例子中,很少有锚标记被错误的结束标记关闭。

wrong >>    <h5><a href="mailto:gracias@email.com">Mucho Grassy Ass<a/></h5>

right >>    <h5><a href="mailto:gracias@email.com">Mucho Grassy Ass</a></h5>

纠正上述错误后,代码折叠正确出现。

roejwanj

roejwanj7#

刚刚注意到,这似乎会影响名称中包含.的文件,因为Netbeans不会自动添加.php扩展名。如果您使用class.{classname}作为文件名,则大纲将不会出现,因为文件将使用.{classname}作为扩展名,而不是. php。
要修复此问题,请确保在创建新文件时使用class.{classname}作为文件名时键入.php。

k3fezbri

k3fezbri8#

该问题在NetBeans 11.2中仍然存在,似乎是由代码中包含的HTML引起的。
重现问题:两个折叠标签都不起作用。这可能是由于简单地删除并替换<?php中“Some HTML”后面的正确p而导致的。如果删除?> <p>Some HTML</p> <?php并将其粘贴回去,折叠将再次起作用。

<?php
// <editor-fold defaultstate="collapsed" desc="HTML in php function"> 
function test1() {
  // some PHP code
  ?>
  <p>Some HTML</p>
  <?php
  // Some more PHP
}
// </editor-fold> 
// <editor-fold defaultstate="collapsed" desc="More HTML"> 

function test2($url, $alt) {
  // some PHP code
  if (strlen($url)) {
    ?>
    <div class="divProductTableImage">
      <img class="imgProductTableImage" 
           src="<?php echo $url; ?>"
           alt="<?php echo $alt; ?>" />
    </div>
    <?php
  }
}
// </editor-fold>
gev0vcfq

gev0vcfq9#

这是一个旧的线程,但我现在使用NetBeans IDE 13,我刚刚发现,如果你的JavaScript文件的名称中有“config”一词,代码折叠不起作用。我可以将SV_Config.js中的每一行代码复制到一个名为newfile.js的新文件中,代码折叠将在第二个文件中起作用,但在第一个文件中不起作用。如果我将代码复制到另一个新文件config.js中,代码折叠在第三个文件中不起作用。奇怪吧?

相关问题