cpp
#include <dirent.h>
int scandir( const char *dir,
struct dirent ***namelist,
int (*filter) (const void *b),
int ( * compare )( const struct dirent **, const struct dirent ** ) );
int alphasort(const void **a, const void **b);
int versionsort(const void **a, const void **b);
當函式成功執行時返回找到匹配模式檔案的個數,如果失敗將返回-1。
eg:
#include <dirent.h>
int main()
{
struct dirent **namelist;
int n;
n = scandir(".", &namelist, 0, alphasort);
if (n < 0)
{
perror("not found\n");
}
else
{
while(n--)
{
printf("%s\n", namelist[n]->d_name);
free(namelist[n]);
}
free(namelist);
}
}
PHP Directory 函式
scandir() 函式返回一個數組,其中包含指定路徑中的檔案和目錄。
若成功,則返回一個數組,若失敗,則返回 false。如果 directory不是目錄,則返回布爾值 false 並生成一條 E_WARNING 級的錯誤。
語法
scandir(directory,sort,context)
參數 | 描述 |
directory | 必需。規定要掃描的目錄。 |
sort | 可選。規定排列順序。默認是 0 (升序)。如果是 1,則為降序。 |
context | 可選。規定目錄句柄的環境。context 是可修改目錄流的行為的一套選項。 |
例子
<?phpprint_r(scandir("images"));?>
輸出:
Array([0] => .[1] => ..[2] => dog.jpg[3] => house.jpg[4] => logo.gif)