回声javascript总是在PHP中工作吗?

时间:2013-06-13 12:39:23

标签: php javascript echo

在php中,如果我放下以下行

echo "<script type='text/javascript'>[javascript code here]</script>";

我可以假设javascript代码将始终执行,而不管我把它放在php文件中的哪个位置?假设php语法有效且行被执行(某些条件不禁止它)

编辑:我有一个php文件,其中有一些javascript代码和alert('ok');,但邮箱永远不会出现。我想知道代码是否实际执行了,浏览器在页面被更改时解除了消息框。

4 个答案:

答案 0 :(得分:3)

没有。

  • 您可以将其放在不输出HTML的PHP​​文件中(例如PDF文档或zip文件)。
  • 您可以将其置于header()来电并打破标题
  • 您可以将其放在if声明正文中,以便只会有条件地包含
  • 您可以将其放在<style>元素中,因此将其视为无效的CSS

PHP只输出东西。如果你想让它输出一个<script>元素,那么你必须把它放在一个可以输出它的地方,它就是输出它的地方。

答案 1 :(得分:0)

是的,它将被执行,因为它作为html代码返回到浏览器,浏览器不关心它来自何处。它也常常在XSS攻击中被滥用。

总之,它会一直执行,直到它是正确的JS并在html结构中打印到适当的位置。

答案 2 :(得分:0)

如果插入的位置有效,将执行代码。如果您只是在那里编写了javascript代码,它的行为将完全相同。

例如,我确定以下代码不起作用:

<ta<?php echo "<script type='text/javascript'>[javascript code here]</script>"; ?>ble>

答案 3 :(得分:0)

你在这里搞两双鞋。您的javascript代码将不会在服务器端(执行PHP)的任何地方执行。完成PHP prozessor并将输出(包括您的javascript行)发送到客户端后,您的javascript将被执行。根据客户端浏览器的严格程度{_ 1}} - 元素需要位于HTML页面的<script><head>元素内