Javascript 将数组从php传递到js

Javascript 将数组从php传递到js,javascript,php,json,file,Javascript,Php,Json,File,我用php扩展名创建了一个文件。在这里,我从数据库中读取了信息。我需要将这个数据(关联数组)传递给js,js也包含在这个php文件中 <?php require('../db.php'); function var_dump1($arr) { echo '<pre>'; var_dump($arr); echo '</pre>'; } // load data from Databa

我用php扩展名创建了一个文件。在这里,我从数据库中读取了信息。我需要将这个数据(关联数组)传递给js,js也包含在这个php文件中

<?php
    require('../db.php');

    function var_dump1($arr) {
        echo '<pre>';
        var_dump($arr);
        echo '</pre>';
    }

    // load data from Database
    $query = R::getAll("SELECT * from questions");
    var_dump1($query);

?>

<script>
const arr = JSON.parse( '<?php echo json_encode($query); ?>' );
console.log(arr);

</script>   
控制台日志(arr)

结论: 就php而言,一切都很好。但当我们试图在js部分的js对象中解析这个数组时,我们看到了奇怪的错误

问题:

  • 如何将数据(例如,在我的例子中是关联数组)从php加载到js。当php和js位于同一扩展名文件(php)中时
  • 如何将数据(例如,在我的例子中是关联数组)从php加载到js。当php和js位于不同的文件中时。例如,我们有一个扩展文件php,其中我们实现了逻辑(在我的例子中,使用DB)。我们需要将这些数据导入扩展文件js
  • 1) 您需要做的就是:

    <script>
    var myData = <?php echo json_encode($array);?>;
    console.log(myData);
    </script>
    
    
    var arr=;// 1)您需要做的就是:

    <script>
    var myData = <?php echo json_encode($array);?>;
    console.log(myData);
    </script>
    
    
    var arr=;// 你应该了解。
    这是一种可以用任何语言(包括JS)解析的语法

    只需使用PHP将您的数组回送到JacaScript代码中,如下所示:

    // as a js - variable: 
    <script type="text/javascript">
    <?php
    var questions = <?php echo json_encode($query);
    ?>
    alert(questions); // Output whatever is in the questions-variable
    </script>
    
    
    var myData=;
    console.log(myData);
    
    您应该了解。 这是一种可以用任何语言(包括JS)解析的语法

    只需使用PHP将您的数组回送到JacaScript代码中,如下所示:

    // as a js - variable: 
    <script type="text/javascript">
    <?php
    var questions = <?php echo json_encode($query);
    ?>
    alert(questions); // Output whatever is in the questions-variable
    </script>
    
    
    var myData=;
    console.log(myData);
    
    通常,php代码将呈现为html页面。在此页面中,您可以根据需要构造数据。示例(在php代码中):

    //作为js变量:
    警惕(问题);//输出questions变量中的任何内容
    
    问题将是您可以访问的全局js变量 来自另一个js.file,或来自嵌入在html文件中的js

    //作为html中的数据:
    
    通常,php代码将呈现为html页面。在此页面中,您可以根据需要构造数据。示例(在php代码中):

    //作为js变量:
    警惕(问题);//输出questions变量中的任何内容
    
    问题将是您可以访问的全局js变量 来自另一个js.file,或来自嵌入在html文件中的js

    //作为html中的数据:
    
    为什么要使用
    var_dump
    而不是?发布呈现页面的源代码(仅JS部分)在
    json.parse
    @Richard他已经在编码它了。事实上,只需这样做:
    const arr=
    为什么要使用
    var\u dump
    而不是?发布呈现页面的源代码(仅JS部分)在
    json.parse
    @Richard之前,您需要对其进行
    json\u编码。他已经在编码了。事实上,只需这样做:
    const arr==D。。。有时我也会同意:)=D。。。有时,拉格西也会同意:)
    
    // as a js - variable: 
    <script type="text/javascript">
    <?php
    var questions = <?php echo json_encode($query);
    ?>
    alert(questions); // Output whatever is in the questions-variable
    </script>
    
    // As data in your html: 
    <input type="hidden" id="id_questions" name="questions" 
    value="<?php echo htmlspecialchars(json_encode($query)); ?>"
    />
    // Then fetch this data using js-code, eg in a different js-file: 
    alert(document.getElementById('id_questions').value());