是否可以使用Javascript读取PHP会话?

use*_*712 2 php jquery

我正在使用cakePHP 1.26.
在控制器中,我得到了一个包含以下代码行的函数:

$this->Session->write('testing', $user);
$this->Session->read('testing');
Run Code Online (Sandbox Code Playgroud)

现在系统编写了一个会话并存储在服务器上.是否可以使用Javascript或Jquery来读取名为'testing'的会话?

Bal*_*usC 9

当JavaScript在webclient(webbrowser)中运行时,PHP会话存储在webserver的内存中.这些是在现实世界中两个物理上独立且独立的机器.它们通常只能使用HTTP协议通过网络相互通信.

你有2个选择:

  1. 让PHP打印会话数据,好像它是一个JS变量:

    <script>var data = '<?= $_SESSION['data'] ?>';</script>
    
    Run Code Online (Sandbox Code Playgroud)
  2. 让JS使用Ajax从服务器端请求它.这是一个基于jQuery的例子:

    <script>$.get('script.php', function(data) { /* .. */ });</script>
    
    Run Code Online (Sandbox Code Playgroud)

    基本上这个在script.php:

    <?php echo $_SESSION['data']; ?>
    
    Run Code Online (Sandbox Code Playgroud)

毋庸置疑,选项1是最简单直接的.