2

我用 PHP 扫描一个只包含文件夹的目录:

$folders = scandir('gallery');

现在我想检查 javascript 中的字符串是否是此目录中的文件夹。

if(theString == allTheFolders){
     alert('yay');
}

现在$folders是一个包含字符串的数组。要获取所有字符串,我使用 foreach 循环并忽略'.' & '..'目录的。但是我怎样才能在 if 循环中获取所有这些文件夹?希望你能理解我的问题!

4

1 回答 1

4

将您的数组作为 JSON 回显到您的 JavaScript 中。

echo 'var folders = ', json_encode($folders);

然后你可以直接在 JavaScript 中循环或做任何你需要的事情。


编辑:现在您已经发布了您的实际问题......在您的 JavaScript 中执行此操作:

var wantedFolder = 'something';
var wantedFolderFound = false;
for (folderIndex in folders) {
    if (folders[folderIndex] === wantedFolder) {
        wantedFolderFound = true;
    }
}
if (wantedFolderFound) {
    alert('Folder found!');
} else {
    alert('Folder not found.');
}

作为替代方案,我可能会使用Array.indexOf(). 它并非在所有浏览器中都可用,但该问题很容易解决。请参阅文档: https ://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/indexOf

于 2012-12-06T15:57:46.947 回答