【问题标题】:Sending a PHP session variable to javascript of another file将 PHP 会话变量发送到另一个文件的 javascript
【发布时间】:2018-12-01 17:09:09
【问题描述】:

我使用 PHP 从 CSV 文件中提取数据并将数据存储为嵌套数组。 我将此数组存储为会话变量,现在我想使用 javascript 访问另一个 html 文件中的数组。如何做到这一点?

<?php
    session_start();
    $arr=array();

    $arr['1']=array('abc','def');
    $arr['2']=array('123','456');

    $_SESSION["abc"]=$arr;

?>

这是一个示例 php。我必须在 javascript 中访问 session 变量。

【问题讨论】:

标签: javascript php html session


【解决方案1】:

是的,您可以使用 implode PHP 函数将您的数组转换为字符串,然后 echo 将该字符串分配给一个 JS 变量,如下例所示。

您的另一个 HTML 文件:

<?php 
    session_start();
    $your_array=$_SESSION['your_array'];
?>
<script>
    var js_variable = [<?php echo implode($your_array,','); ?>];
    console.log(js_variable);
</script>

【讨论】:

    【解决方案2】:

    您应该注意的是,php 是服务器端,javascript 是客户端。所以要解决这个问题,你有两个选择:

    1. 让 php 代码在头部添加这个变量。关于一切:

      <script>
        var php_variables= <?php echo json_encode($your_php_variables); ?>;
      </script>
      

    或 2. 制作一个单独的 php 文件,它只回显 json 中的值并放置一个 json 标头:

     <?php 
      header("content-type:application/json");
      echo json_encode($your_php_variables);
     ?>
    

    然后让 javascript 检索它。有很多图书馆可用于此。但是让我们来看看 jquery 之类的常见问题:

    $.get("yourphpfile.php",function(data){do something here})
    

    【讨论】:

    • 您的第一个方法有助于将数组检索到 javascript 中。我通过执行 console.log() 确认了这一点。但是对变量进行 document.write 是给 [object Object]
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 2015-11-05
    • 1970-01-01
    • 2011-12-05
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    相关资源
    最近更新 更多