gpt4 book ai didi

php - 如何将 JavaScript 变量输出存储到 PHP 变量中?

转载 作者:技术小花猫 更新时间:2023-10-29 12:45:47 25 4
gpt4 key购买 nike

我在 JavaScript 中有以下代码:

<script>
var a="Hello";
</script>

PHP 代码:-

<?php 
$variable = // I want the above JavaScript variable 'a' value to be stored here
?>

注意:我不想在表单提交中使用它。我在 JavaScript 中有一些逻辑,我想在同一个 PHP 页面中使用它...请告诉我如何做到这一点。

最佳答案

你必须记住,如果 JS 和 PHP 存在于同一个文档中,则 PHP 将首先执行(在服务器端),然后 JS 将执行(在浏览器端)——两者永远不会交互(除了你用 PHP 输出 JS 的地方,这并不是两个引擎之间真正的交互)。

考虑到这一点,最接近的方法是在 JS 中使用 PHP 变量:

<?php
$a = 'foo'; // $a now holds PHP string foo
?>
<script>
var a = '<?php echo $a; ?>'; //outputting string foo in context of JS
//must wrap in quotes so that it is still string foo when JS does execute
//when this DOES execute in the browser, PHP will have already completed all processing and exited
</script>
<?php
//do something else with $a
//JS still hasn't executed at this point
?>

正如我所说,在这种情况下,PHP(所有这些)首先在服务器上执行,导致:

  1. 一个 PHP 变量 $a 被创建为字符串 'foo'
  2. $a 的值在某些 JavaScript 的上下文中输出(当前未执行)
  3. 更多使用 PHP 的 $a
  4. 所有输出,包括带有 var 赋值的 JS,都被发送到浏览器。

如所写,这导致以下内容被发送到浏览器执行(为清楚起见,我删除了 JS 注释):

<script>
var a = 'foo';
</script>

然后,只有到那时,JS 才会开始执行它自己的变量 a 设置为“foo”(此时 PHP 不在画面中)。

换句话说,如果两者在同一个文档中,并且没有与服务器进行额外的交互,那么 JS 不会对 PHP 造成任何影响。此外,PHP 对 JS 的影响仅限于输出一些 JS 或在 JS 上下文中输出某些东西的简单能力。

关于php - 如何将 JavaScript 变量输出存储到 PHP 变量中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14662927/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com