1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > php随机获取文件夹 php从文件夹随机读取文件的方法

php随机获取文件夹 php从文件夹随机读取文件的方法

时间:2024-04-19 05:57:15

相关推荐

php随机获取文件夹 php从文件夹随机读取文件的方法

本文实例讲述了php从文件夹随机读取文件的方法。分享给大家供大家参考。具体实现方法如下:

function RandomFile($folder='', $extensions='.*'){

// fix path:

$folder = trim($folder);

$folder = ($folder == '') ? './' : $folder;

// check folder:

if (!is_dir($folder)){ die('invalid folder given!'); }

// create files array

$files = array();

// open directory

if ($dir = @opendir($folder)){

// go trough all files:

while($file = readdir($dir)){

if (!preg_match('/^\.+$/', $file) and

preg_match('/\.('.$extensions.')$/', $file)){

// feed the array:

$files[] = $file;

}

}

// close directory

closedir($dir);

}

else {

die('Could not open the folder "'.$folder.'"');

}

if (count($files) == 0){

die('No files where found :-(');

}

// seed random function:

mt_srand((double)microtime()*1000000);

// get an random index:

$rand = mt_rand(0, count($files)-1);

// check again:

if (!isset($files[$rand])){

die('Array index was not found! very strange!');

}

// return the random file:

return $folder . $files[$rand];

}

//用法演示:

// "jpg|png|gif" matches all files with these extensions

print RandomFile('test_images/','jpg|png|gif');

// returns test_07.gif

// ".*" matches all extensions (all files)

print RandomFile('test_files/','.*');

// returns foobar_1.zip

// "[0-9]+" matches all extensions that just

// contain numbers (like backup.1, backup.2)

print RandomFile('test_files/','[0-9]+');

// returns backup.7

希望本文所述对大家的php程序设计有所帮助。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。