4

在将 PHP 与 Javascript 混合时,我一直在寻找解决 NetBeans (7.1.1) 代码突出显示错误错误的解决方案。我也使用 Notepad++,它对此没有任何问题。

例子:

function showUpload<?php echo $upload;?>(file) { /* JS-code */ }

或者:

$('.option-help').qtip({
    content: function(api) { return $(this).parent().attr('data-tip'); },
<?php if ($help == 'icon') { ?>
    show: { event: 'click' },
<?php } ?>
    position: { my: 'bottom left', at: 'top left', of: $(this) }
});

我确实找到了一些解决方法,但我拒绝为我的 IDE 更改代码!!!(IDE 应该帮助我编写代码,而不是让事情变得更困难)

有谁知道这个问题的实际解决方案?

4

2 回答 2

4

如果您在文件中仅使用 JavaScript + PHP 组合(没有 HTML),只需打开要突出显示 JavaScript 语法的文件,然后添加以下行:

//<script type="text/javascript">

在打开第一个 PHP 标记之前,在页面顶部,如下所示:

//<script type="text/javascript">
<?php
/*The rest of the code..*/
?>

此文件中的所有 JavaScript 代码都应正确突出显示。

如果您在文件中间的某处有 HTML 代码,则需要在 HTML 代码之前关闭 JavaScript 标记,并在 HTML 代码之后重新打开它,如下所示:

//<script type="text/javascript">
<?php
/*The rest of the code..JavaScript + PHP*/

//</script>
<h1>HTML code</h1><!--HTML code only-->
<p>Bla bla..</p>
//<script type="text/javascript">

/*JavaScript + PHP code again*/

?>

如果您不希望将这些注释打印到最终的 HTML 文档中,您可以在文档顶部创建永远不会被您使用的假 PHP 函数,只有 IDE 使用:

<?php
function higlightJavaScriptCode(){
    ?>
    //<script type="text/javascript">
    <?php
}
/*The rest of the code..*/
?>
于 2014-01-29T19:33:17.023 回答
0

@gradosevic 在上面钉了它,我将添加我自己的超紧凑版本,它不会向浏览器输出任何内容:

// Fix Netbeans' jQuery highlighting in mixed PHP/JS. See https://stackoverflow.com/a/21440810/209859
function higlightJavaScriptCode(){?>//<script type="text/javascript"><?php }

我想唯一的问题是每个项目只能有一个,或者你必须开始命名它们。

于 2019-03-05T18:50:53.957 回答