我使用PHP扫描目录,其中仅包含文件夹:

$folders = scandir('gallery');


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

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


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

最佳答案

将数组作为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

10-06 00:25