我正在尝试找到在php文件中调试javascript代码的方法。我在php文件中嵌入了很多javascript代码。
在XDebug的帮助下,我可以使用netbeans调试php代码。我还可以在html或js文件中使用chrome或firefox等浏览器分别调试javascript。
我想要的是调试php文件中的javascript代码,如果可能的话。我相信很多人会使用嵌入php文件的javascript。我个人不喜欢它,但我必须继续努力。我知道我可以在js文件中单独编写代码,然后可以使用浏览器进行调试,但这是大量的代码,花时间进行分离。
如果可能的话,在座的任何人能给我一个建议吗?
在PHP项目中调试netbeans 7.4中的Javascript
https://netbeans.org/kb/docs/php/debugging.html
https://confluence.jetbrains.com/display/PhpStorm/Debugging+PHP+and+JavaScript+code+at+the+same+time+in+PhpStorm
https://blog.jetbrains.com/phpstorm/2014/06/debugging-php-and-javascript-code-at-the-same-time/
发布于 2018-10-21 09:11:58
我甚至没有查过它,我认为它是不可行的(也不应该)。
原因如下:
你的PHP在服务器端被处理,这就是XDebug的作用,它允许你断点你所有的PHP代码。然后,服务器输出到达客户机,即实际的JS在解析后的HTML中以内联方式进行处理的时候。这意味着您必须以某种方式截取HTML,解析它,检测最终的内联JS脚本……并在此时设置断点(每次运行时都是),然后输出到客户端,客户端再次解析HTML以呈现它并处理最终的断点。我猜这将是一个乏味的过程,甚至更乏味的工作,这就是为什么甚至没有人尝试为它做一个扩展。
据我所知,内联JS也更难调试,我从来没有见过一个实际的设置,允许直接从IDE中断点静态HTML文档中的嵌入标记,这将比PHP中的断点JS更容易实现……
我想你最好的办法是将JS外部化到单独的文件中,并且只在PHP模板中使用硬代码,无论如何,从长远来看,使用起来确实会更舒服。
然后,您将能够断点中的所有内容
,再加上实际的前端架构,语法突出显示,给你的老板留下深刻印象,让你的生活变得更容易,世界变得更美好,等等。
另外,作为参考:
如何用Netbeans调试JavaScript代码?(答案#45515159)
继续阅读:
https://netbeans.org/kb/docs/webclient/html5-js-support.html
编辑:
在静态HTML标记中设置JS断点在可视代码中似乎是可行的,例如->
https://github.com/Microsoft/vscode-chrome-debug/issues/122
发布于 2021-03-01 03:36:32
我不知道我是不是来晚了,但是,我偶然发现了下面的网站,并且能够为Javascript和PHP设置调试器,该调试器支持在PHP脚本中调试嵌入式JavaScript。
来源:
https://abcmemo.com/2017/04/20/debug-php-and-javascript-in-visual-studio-code/
该网站使用PHP.exe作为web服务。
也可以使用IIS、Apache或其他。
要求:
IDE: Visual studio代码
扩展: PHP调试
扩展:调试器(Chrome、Firefox或Edge)
php.ini中的Xdebug集
浏览器中的扩展(可选):如果要在触发器上调试,则使用PHP xdebug。
您需要同时运行两个调试器,一个用于PHP,另一个用于JavaScrpit。
PHP示例
JavaScript示例
发布于 2018-10-21 09:25:16
我使用了很多wordpress模板,在这些模板中,我不得不在php文件中处理一些js。假设您可以在服务器上运行您的代码,那么您可以轻松地在chrome中的dev工具中调试您的输出(如果使用chrome)。Chrome还允许设置断点,这样你就可以逐行执行,而且因为你的浏览器最终会运行js,所以你可以监控你的代码行为,而不需要处理php。这是我处理这个问题的主要方式。
我还建议将尽可能多的js文件分离到您的资产文件夹中的单独文件中。根据你的项目,你很少需要内联你的代码,在我看来,在你的php中包含大量的JS是很混乱的,除非你使用
或者
属性(也可以使用事件侦听器处理。
除此之外,
所有东西中的垃圾。
https://stackoverflow.com/questions/52911197
复制相似问题