Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.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
在不丢失代码功能的情况下将数组从JavaScript传递到PHP_Javascript_Php_Ajax - Fatal编程技术网

在不丢失代码功能的情况下将数组从JavaScript传递到PHP

在不丢失代码功能的情况下将数组从JavaScript传递到PHP,javascript,php,ajax,Javascript,Php,Ajax,使用这段代码,我可以列出文件夹A、文件夹B和文件夹C中的所有文件URL: 我只想要一件我自己找不到解决方案的简单事情: 如何在javascript中定义文件夹而不是在PHP中定义文件夹 我的意思是,不要在PHP代码中包含以下内容: $directories = array("Folder_A", "Folder_B","Folder_C"); 我希望在Javascript中有这样的内容: $(document).ready( function() { $.ajax({

使用这段代码,我可以列出文件夹A、文件夹B和文件夹C中的所有文件URL:

我只想要一件我自己找不到解决方案的简单事情:

如何在javascript中定义文件夹而不是在PHP中定义文件夹

我的意思是,不要在PHP代码中包含以下内容:

$directories = array("Folder_A", "Folder_B","Folder_C");
我希望在Javascript中有这样的内容:

$(document).ready( function() {
        $.ajax({
            type: 'POST',
            url: '../test.php',
            data: 'id=testdata',
            dataType: 'json',
            cache: false,
            success: function(result) {
            console.log(result);
            },
        });
});
let directories = [ "Folder_A", "Folder_B","Folder_C"];

并返回相同的功能。

将目录作为data:parameter的一部分传递

$(document).ready( function() {
    let directories = [ "Folder_A", "Folder_B","Folder_C"];
    $.ajax({
        type: 'POST',
        url: '../test.php',
        data: {id: "testdata", directories: directories},
        dataType: 'json',
        success: function(result) {
            console.log(result);
        },
    });
});
然后在PHP中,您可以使用$_POST['directories']来获取数组:

echo json_encode(getDirContents($_POST['directories']));

我不知道为什么。检查控制台的“网络”选项卡,查看发送和接收的内容。我认为是空间造成了问题,如果我有文件夹A,代码就不工作……如果我有文件夹A,代码就工作正常?!!
echo json_encode(getDirContents($_POST['directories']));