JavaScript运行的时间和地点,PHP如何?我可以结合两个吗?

前端之家收集整理的这篇文章主要介绍了JavaScript运行的时间和地点,PHP如何?我可以结合两个吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
什么时候运行像 JavaScript这样的客户端语言,何时运行像PHP这样的服务器端语言?如何混合?

当我的站点上的一个按钮被点击或者从PHP运行一个JavaScript函数时,我想运行一个PHP函数;那可能吗?

解决方法

简短的答案是否定的.你不能从JavaScript运行PHP函数[除了AJAX],也不能从PHP运行JavaScript函数.两个运行时间是分开的.

怎么样?

要了解JavaScript和PHP如何合作,您应该首先了解为网络启动的HTTP协议的基础知识.

上图显示了HTTP协议的基础知识.用户(您)要求客户端(您的浏览器)向您提供一个页面.然后,浏览器将要求服务器(Google在本例中)作为页面.服务器将回复HTML页面,客户端解析该页面,并要求图像,字体以及正确加载页面所需的任何其他资源.然后,客户端将完成的页面呈现给用户.

那么JavaScript在哪里?

JavaScript在客户端(即浏览器)中运行.所以JavaScript在服务器的响应到达之后运行.我们将其添加到我们的图中.

JavaScript脚本在加载后立即开始运行,如果有事件侦听器等待用户的事件(如单击,打字或移动),它们将继续运行.

PHP在哪里适合?

PHP在服务器上运行,Web服务器(负责服务Web内容的程序)将根据其配置运行PHP. PHP将处理来自Web服务器的输入,并返回输出.该输出被送回客户端.

更新图:

您可以看到,PHP执行不会持续.它被执行,然后一旦响应被发送结束.

如您所见,PHP执行和JavaScript执行之间没有重叠,因此实际上不可能根据其他任务之间的一个函数来工作.

但是..但是我听说过AJAX!

AJAX只是引起了JavaScript的另一个HTTP请求.您可以将其称为使用JavaScript中的PHP函数,但实际上并不完全相同.

正如你所看到的,使用AJAX,JavaScript将向服务器发送请求,这将调用PHP,PHP将再次运行,就像在正常请求中一样(PHP不一定知道这是一个AJAX请求!)和服务器将响应返回给JavaScript,使用它来执行操作.

在这种情况下,由于JavaScript调用请求,因此PHP运行时间与JavaScript运行时间之间存在重叠.

另见:

> How to pass variables and data from PHP to JavaScript?

猜你在找的JavaScript相关文章