Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过jquery循环的PHP循环_Php_Jquery - Fatal编程技术网

通过jquery循环的PHP循环

通过jquery循环的PHP循环,php,jquery,Php,Jquery,我有一个简单的jQuery函数: $(document).ready(function () { var books = {}; books.id = '1'; books.author = 'Bob'; $.post('/index.php', { books: books }, function(data, textStatus) { alert(data); }); }); 这个索引

我有一个简单的jQuery函数:

$(document).ready(function () {
    var books = {};
    books.id = '1';
    books.author = 'Bob';

    $.post('/index.php',
    {
       books: books
    },
    function(data, textStatus)
    {
       alert(data);  
    });
});
这个
索引
PHP脚本:

<?php

  foreach($_POST['books'] AS $key) {
       echo ''.$key['id'].' is written by '.$key['author'].'';
  }

?>


我想在jQuery数组中循环并显示数组中每个键的id和作者。我不知道访问数组中的值的正确方法。看来我做错了。

你误解了
JavaScript
{}
[]
之间的区别:

  • {}
    是一个对象
  • []
    是一个数组
  • 在本例中,您应该传递book
    对象的
    数组
    ,以便在php脚本中使用。 例如:

    var books = [
        {
            id: 1,
            name: "The Da Vinci Code",
            author: "Dan Brown"
        },
        {
            id: 1,
            name: "Gray Mountain: A Novel",
            author: "John Grisham"
        }
    ]
    
    要在数组初始化后向数组中添加更多元素,只需使用
    push

    books.push({id: 3, name: "Avatar", author: "Lisa Fitzpatrick"});
    
    将输出:

    1 is written by Dan Brown
    2 is written by John Grisham 
    3 is written by Lisa Fitzpatrick
    

    您传递的是
    书籍中的单个对象,而不是数组。您还应该在php中使用
    json\u decode
    将数据解析为php对象
    var books=[{id:1,author:'Bob'},{id:2,author:'Bill'}]
    hey mate:)在启动该数组后,如何将更多元素推送到该数组中?