例如:
echo "<script type'"javascript'"> alert('HELLO ALL')</script>";
PHP在服务器上运行,Javascript在客户端运行。
当我们在PHP中回显Javascript时,这个Javascript代码将在哪里运行?在服务器端还是客户端?
PHP呈现HTML/CSS/JS源代码,然后将其发送到客户端并在客户端执行。回显线路在服务器上运行。输出的JavaScript代码在客户端上运行。
PHP接受任何PHP函数、PHP变量、PHP注释或纯文本(可以是HTML/JS/CSS/…)
Server --> PHP, ... (cares only PHP)
Client --> Javascript, HTML, CSS, ...
echo函数基本上将引号之间的任何内容输出到请求客户端(在本例中为浏览器)。然后,浏览器根据其mime类型呈现或处理从php脚本接收的输出。在您的案例中,您正在回显一个包装在脚本标记中的JavaScript代码。当浏览器在接收到的数据中遇到脚本标记时,它会在本地(客户端计算机上)解释以下js代码。
如果将PHP脚本放置在PHP标记之间,如下所示:
<?php echo "<script type'"javascript'"> alert('HELLO ALL')</script>"; ?>
将生成在前端运行的指定JavaScript。PHP脚本应该正确地放置在HTML页面的正文或HEAD部分中。
如果您希望放弃脚本标记并使用jQuery,则可以使用PHP代码生成事件属性的值。下面的代码针对用户点击文档正文中的任何位置时的点击事件,并导致PHP已经提供的JavaScript执行,如下所示:
<script>
$(document).click(
function() {
<?php
echo "alert('"Hi to the purple fish in the deep blue sea'")'n";
?>
console.log('Document is clicked!');
});
</script>
如果你做了一个视图源代码,没有人能看出来是PHP生成的!这样想:首先执行服务器代码,然后执行包括JavaScript/jQuery在内的前端。
一旦加载网页,所有
echo
将从服务器端执行php文件。
因此,无论您的echo包含什么内容,都将写在页面源(客户端)上。
考虑到,该脚本仍将在客户端。
echo的目的是打印出来。在您的情况下,javascript将在浏览器上打印出来,并由浏览器(客户端)执行。