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 に答える