如何在不使用 'global' 的情况下将页面中的变量从 php 脚本传递到另一个 php 脚本?

How to pass variables in page from a php script to another php script without using 'global'?

也许这是个奇怪的问题。这不是将值从一页传递到另一页。

我有一页。它包括 scriptA 和 scriptB。

脚本 A 由 java 脚本通过 ajax 执行,并且应该设置一个变量供脚本 B 使用。我不能在 html 中编写它,并且我认为,在这种情况下,不能将它保存在 js 中,也不能使用全局 php 变量。另外,我没有重新加载页面(因为第一个脚本是通过 ajax 调用的)。

即使我没有将变量从一个页面传递到另一个页面,在这里使用会话会不会很好?或者还有其他方法可以实现吗?

我会使用会话变量或 cookie 来完成。最好使用会话变量,因为您可以在网站的任何地方使用它们。

此致。

有两种方法(会话除外):

  1. 将 ScriptB 包含到 ScriptA 中

ScriptA.php

<?php
    $a = $_POST['myVar'];
    include "ScriptB.php";

ScriptB.php

<?php
    echo $a;
  1. Return 来自 ScriptA.php 的值,然后您可以将其发送到 ScriptB.php

ScriptA.php

<?php
$a = $_POST['myVar'];

echo json_encode(['data' => $a]);

ajax.js

$.ajax({
  url: "./ScriptA.php",
  type: "POST",
  dataType: "JSON",
  succes: function (response) {
    let json = JSON.parse(response);
    let myVar = json.data;

    $.ajax({
      url: "./ScriptB.php",
      type: "POST",
      data: {data: myVar},
      dataType: "JSON"
    })

  }
})