PHP中使用的Javascript在服务器或客户端上运行


Javascript used in PHP, does this run on the server or in the client?

例如:

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将在浏览器上打印出来,并由浏览器(客户端)执行。