我想将变量“i”(javascript) 的值分配给变量 $x(PHP)。下面的代码不起作用
<script type="text/javascript">
$(function () {
for (var i = 0; i <= 10; i += 1)
d1.push([i, <?php $x=" ?>i<?php "; echo test($x); ?>]);
.
.
.
我想将变量“i”(javascript) 的值分配给变量 $x(PHP)。下面的代码不起作用
<script type="text/javascript">
$(function () {
for (var i = 0; i <= 10; i += 1)
d1.push([i, <?php $x=" ?>i<?php "; echo test($x); ?>]);
.
.
.
但是 PHP 是服务器端的,所以在 JavaScript 意识到它存在之前就被解析了……你需要在循环之前将 PHP 变量保存到某种 JS 数据结构中
您可以使用 PHP 代码生成 JavaScript,然后将其提供给用户。反过来(使用 JavaScript 创建 PHP 代码或在那里注入值)是不可能的。
这里的一个例外是,您可以使用 AJAX 请求在服务器上执行另一个 PHP 脚本。在该请求中,您可以包含一些由 JavaScript 生成的值,以将它们传递给 PHP 脚本。
一般来说,PHP 是服务器端语言,而 JavaScript 是客户端语言。您可以在服务器端生成客户端代码,但反之则不行。
当然是行不通的。您的代码正在做的是为 PHP 变量$x
分配" ?>i<?php "
. 您无法在字符串文字中间逃离 PHP 模式。
您似乎误解了 Web 应用程序的客户端/服务器模型如何工作的某些基本原理。JavaScript 在客户端(在浏览器中)运行,PHP 在服务器上运行。客户端永远不会看到任何 PHP 代码,服务器永远不会执行任何 JavaScript 代码。你不能混搭(无论如何不使用 AJAX)。
您可以将变量内容 $_POST 到服务器(通过表单)。否则,您将不得不使用 AJAX 将变量发布到服务器。
无论哪种方式,您都需要从客户端获取它并将其发送到服务器端。