兩個方法,,隨機和條件兩種模式
/*
?*?time:2016年12月2日17:58:36
?*?author:張晨陽
?*?email:lequne@126.com
?*/
//根據(jù)判斷條件生成不同的文件名
function?fRename($dirname)
{
????if?(!is_dir($dirname))?{
????????echo?"{$dirname}不是一個有效的目錄!";
????????exit();
????}
????$handle?=?opendir($dirname);
????while?(($fn?=?readdir($handle))?!==?false)?{
????????if?($fn?!=?'.'?&&?$fn?!=?'..')?{
????????????echo?"fn?=?"?.?$fn?.?"\n\r";
????????????$curDir?=?$dirname?.?'/'?.?$fn;
????????????echo?"curDir?=?"?.?$curDir?.?"\r\n";
????????????if?(is_dir($curDir))?{
????????????????fRename($curDir);
????????????}?else?{
????????????????$path?=?pathinfo($curDir);
????????????????//var_dump($path);//die;
????????????????//$newname?=?$path['dirname'].'/'.rand(0,100).'.'.$path['extension'];
????????????????//得到圖片的信息
????????????????$img_info?=?getimagesize($curDir);
????????????????$w?=?$img_info[0];
????????????????$h?=?$img_info[1];
????????????????//?var_dump($w);
????????????????if?($w?==?210?&&?$h?==?210)?{
????????????????????$newname?=?'1.jpg';
????????????????}?elseif?($w?==?720?&&?$h?==?268)?{
????????????????????$newname?=?'2.jpg';
????????????????}?elseif?($w?==?298?&&?$h?==?198)?{
????????????????????$newname?=?'3.jpg';
????????????????}?elseif?($w?==?338?&&?$h?==?365)?{
????????????????????$newname?=?'4.jpg';
????????????????}?elseif?($w?==?425?&&?$h?==?425)?{
????????????????????$newname?=?'5.jpg';
????????????????}?else?{
????????????????????$newname?=?$fn;
????????????????}
????????????????//$new=rand(10,100000000000);
????????????????//$n=$new.'.jpg';
????????????????//$newname1='.jpg';
????????????????var_dump($curDir);
????????????????$newname?=?str_replace($fn,?$newname,?$curDir);
????????????????var_dump($newname);
????????????????//???die;
????????????????echo?"替換之后的newname:"?.?$newname?.?"\r\n";
????????????????rename($curDir,?$newname);
????????????????//???echo?$curDir.'---'.$newname."
";
????????????}
????????}
????}
}
//調(diào)用該方法
//fRename('./001');
//利用PHP目錄和文件函數(shù)遍歷用戶給出目錄的所有的文件和文件夾,修改文件名稱隨機
function?rand_fRename($dirname)
{
????header('content-type:text/html;charset=utf8');
????if?(!is_dir($dirname))?{
????????echo?"{$dirname}不是一個有效的目錄!";
????????exit();
????}
????$handle?=?opendir($dirname);
????while?(($fn?=?readdir($handle))?!==?false)?{
????????if?($fn?!=?'.'?&&?$fn?!=?'..')?{
????????????echo?"fn?=?"?.?$fn?.?"\n\r";
????????????$curDir?=?$dirname?.?'/'?.?$fn;
????????????echo?"curDir?=?"?.?$curDir?.?"\r\n";
????????????if?(is_dir($curDir))?{
????????????????$new?=?generate_password();
????????????????//?var_dump($new);die;
????????????????$newname?=?str_replace($fn,?$new,?$curDir);
????????????????var_dump($newname);
????????????????rename($curDir,?$newname);
????????????????rand_fRename($newname);
????????????}
??????else{
?????????????????$path?=?pathinfo($curDir);
?????????????????//var_dump($path);//die;
?????????????????//$newname?=?$path['dirname'].'/'.rand(0,100).'.'.$path['extension'];
?????????????????//123[1]???123
?????????????????//得到圖片的信息
?????????????????$img_info=getimagesize($curDir);
????????????????//?var_dump($img_info);
?????????????????$w=$img_info[0];
?????????????????$h=$img_info[1];
?????????????????//防止出現(xiàn)重復(fù)隨機生成文件名字
?????????????????$new=rand(10,100000000000);
?????????????????$n=$new.'.jpg';
?????????????????//$newname1='.jpg';
?????????????????var_dump($curDir);
?????????????????$newname?=?str_replace($fn,$n,$curDir);
?????????????????var_dump($newname);
??????????????//???die;
?????????????????echo?"替換之后的newname:".$newname."\r\n";
?????????????????rename($curDir,$newname);
?????????????}
????????}
????}
}
rand_fRename();??//需要更改的文件夾文件夾
//隨機生成字符串
function?generate_password($length?=?8)
{
????header('content-type:text/html;charset=utf8');
//?密碼字符集,可任意添加你需要的字符?
????$chars?=?'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
????$password?=?"";
????for?($i?=?0;?$i?
//?這里提供兩種字符獲取方式?
//?第一種是使用?substr?截取$chars中的任意一位字符;?
//?第二種是取字符數(shù)組?$chars?的任意元素?
//?$password?.=?substr($chars,?mt_rand(0,?strlen($chars)?–?1),?1);?
????????$password?.=?$chars[mt_rand(0,?strlen($chars)?-?1)];
????}
????return?$password;
}?
PHP怎么學(xué)習(xí)?PHP怎么入門?PHP在哪學(xué)?PHP怎么學(xué)才快?不用擔心,這里為大家提供了PHP速學(xué)教程(入門到精通),有需要的小伙伴保存下載就能學(xué)習(xí)啦!
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://m.miracleart.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號