一种生成文件名的方法及装置制造方法及图纸

技术编号:19023364 阅读:19 留言:0更新日期:2018-09-26 19:03
本发明专利技术提供了一种生成文件名的方法及装置,方法包括:获取上传文件的用户标识及服务器当前的秒级时间戳;利用第一转换规则将所述用户标识及所述秒级时间戳转换为第一字符串;根据所述服务器当前的微秒级时间戳计算第一标识符;利用加密算法将所述第一标识符转换为第二字符串;利用第二转换规则将所述第一字符串及所述第二字符串转换为所述文件名;如此,利用服务器当前的微秒级时间戳计算出的第一标识符是已经是精确到毫秒级的,其重名的概率是千分之一,然后进一步利用加密算法将第一标识符转成的第二字符串是绝对不可逆的;最后再利用第二转换规则将第一字符串及第二字符串转换为所述文件名,这样就保证了文件名的唯一性。

【技术实现步骤摘要】
一种生成文件名的方法及装置
本专利技术属于互联网应用
,尤其涉及一种生成文件名的方法及装置。
技术介绍
随着互联网行业日益发展,网民越来越多,用户随时可以将自己的文件或视频上传至网站中。但是随着用户创造内容(UGC,UserGeneratedContent)行业的发展,用户自行上传数量过大,命名相同的文件过多,无法完全做到文件上传名的唯一性,导致管理员不方便对其进行管理、检索,降低了工作效率。
技术实现思路
针对现有技术存在的问题,本专利技术实施例提供了一种生成文件名的方法及装置,用于解决现有技术中由于用户上传至网站上的文件量过多,文件名不能做到唯一性,导致管理员在对其进行管理时,检索过程繁琐,进而降低工作效率的技术问题。本专利技术提供一种生成文件名的方法,所述方法包括:获取上传文件的用户标识及服务器当前的秒级时间戳;利用第一转换规则将所述用户标识及所述秒级时间戳转换为第一字符串;根据所述服务器当前的微秒级时间戳计算第一标识符;利用加密算法将所述第一标识符转换为第二字符串;利用第二转换规则将所述第一字符串及所述第二字符串转换为所述文件名。上述方案中,所述获取服务器当前的秒级时间戳,包括:调用date(‘YmdHis’,now())方法将所述秒级时间戳转换为所述秒级时间戳的字符串。上述方案中,利用第一转换规则将所述用户标识及所述秒级时间戳转换为第一字符串,包括:获取所述用户标识的字符串及所述秒级时间戳的字符串;根据所述秒级时间戳的字符串基于混淆算法确定出所述用户标识的字符串在所述秒级时间戳的字符串中的第一插入位置;将所述用户标识的字符串插入所述秒级时间戳的字符串中的所述第一插入位置。上述方案中,所述根据所述秒级时间戳的字符串基于混淆算法确定出所述用户标识的字符串在所述秒级时间戳的字符串中的第一插入位置,包括:确定所述秒级时间戳的字符串的第一参照位;获取第一参照位对应字符的第一数值;基于所述第一数值确定出所述第一插入位置。上述方案中,所述根据所述服务器当前的微秒级时间戳计算第一标识符之前,还包括:在所述第一字符串中添加第二标识符,形成第三字符串。上述方案中,所述在所述第一字符串中添加第二标识符,形成第三字符串,包括:确定所述第一字符串的第二参照位;获取所述第二参照位对应字符的第二数值;基于所述第二数值确定所述第一字符串中的添加位置;将所述第二标识符添加至所述第一字符串中的所述添加位置处,形成所述第三字符串。上述方案中,所述利用加密算法将所述第一标识符转换为第二字符串,包括:调用函数RAND()获取一个整数,所述整数的值在0-99999之间;将所述整数与所述第一标识符进行拼接;通过哈希散列算法MD5()将拼接后的字符串转换为所述第二字符串。上述方案中,利用第二转换规则将所述第一字符串及所述第二字符串转换为所述文件名,包括:获取所述第三字符串;确定所述第三字符串的第三参照位;获取所述第三参照位的字符;按照预设的第三转换规则将所述第三参照位的字符转换为第三数值;基于所述第三数值确定出所述第二字符串在所述第三字符串中的第二插入位置;将所述第二字符串插入所述第三字符串中的所述第二插入位置,形成第四字符串;所述第四字符串即为所述文件名。本专利技术还提供一种生成文件名的装置,所述装置包括:获取单元,用于获取上传文件的用户标识及服务器当前的秒级时间戳;第一转换单元,用于利用第一转换规则将所述用户标识及所述秒级时间戳转换为第一字符串;计算单元,用于根据所述服务器当前的微秒级时间戳计算第一标识符;第二转换单元,用于利用加密算法将所述第一标识符转换为第二字符串;第三转换单元,用于利用第二转换规则将所述第一字符串及所述第二字符串转换为所述文件名。上述方案中,获取所述用户标识的字符串及所述秒级时间戳的字符串;根据所述秒级时间戳的字符串基于混淆算法确定出所述用户标识的字符串在所述秒级时间戳的字符串中的第一插入位置;将所述用户标识的字符串插入所述秒级时间戳的字符串中的所述第一插入位置。本专利技术提供了一种生成文件名的方法及装置,所述方法包括:获取上传文件的用户标识及服务器当前的秒级时间戳;利用第一转换规则将所述用户标识及所述秒级时间戳转换为第一字符串;根据所述服务器当前的微秒级时间戳计算第一标识符;利用加密算法将所述第一标识符转换为第二字符串;利用第二转换规则将所述第一字符串及所述第二字符串转换为所述文件名;如此,利用所述服务器当前的微秒级时间戳计算出的第一标识符是已经是精确到毫秒级的,其重名的概率是千分之一,然后进一步利用加密算法将第一标识符转成的第二字符串是绝对不可逆的;最后再利用第二转换规则将所述第一字符串及所述第二字符串转换为所述文件名,这样就保证了文件名的唯一性,进而管理员再对文件进行管理时,可以根据唯一的文件名对其进行检索、管理,从而提高了工作效率。附图说明图1为本专利技术实施例一提供的生成文件名的方法流程示意图;图2为本专利技术实施例二提供的生成文件名的装置结构示意图。具体实施方式为了解决现有技术中由于用户上传至网站上的文件量过多,文件名不能做到唯一性,导致管理员在对其进行管理时,检索过程繁琐,进而降低工作效率的技术问题,本专利技术提供了一种生成文件名的方法及装置,所述方法包括:获取上传文件的用户标识及服务器当前的秒级时间戳;利用第一转换规则将所述用户标识及所述秒级时间戳转换为第一字符串;根据所述服务器当前的微秒级时间戳计算第一标识符;利用加密算法将所述第一标识符转换为第二字符串;利用第二转换规则将所述第一字符串及所述第二字符串转换为所述文件名;下面通过附图及具体实施例对本专利技术的技术方案做进一步的详细说明。实施例一本实施例提供一种生成文件名的方法,如图1所示,所述方法包括:S101,获取上传文件的用户标识及服务器当前的秒级时间戳。本步骤中,若用户已经在服务器中登录,那么就可以获取到用户在服务器中分配的用户标识Uid,具体可以通过$_SESSION[‘uid’]获取得到用户标识Uid,所述用户标识Uid可以为0~65535中的任一数值。例如所述用户标识Uid的值可以是10000。获取到用户Uid后,还需通过调用系统自带方法now()获取服务器当前的秒级时间戳,利用系统函数date()将系统的秒级时间戳转换为年月日时分秒对应格式,再并调用date(‘YmdHis’,now())方法将所述秒级时间戳转换为所述秒级时间戳的字符串$str。例如秒级时间戳的字符串$str可以为20170220151615。S102,利用第一转换规则将所述用户标识及所述秒级时间戳转换为第一字符串。本步骤中,当获取到用户标识Uid及及所述秒级时间戳的字符串后,可以利用第一转换规则将所述用户标识及所述秒级时间戳转换为第一字符串。具体地,首先根据所述秒级时间戳的字符串基于混淆算法确定出所述用户Uid的字符串在所述秒级时间戳的字符串中的第一插入位置;将所述用户Uid的字符串插入所述秒级时间戳的字符串中的所述第一插入位置。而在确定第一插入位置时,具体包括:确定所述秒级时间戳的字符串的第一参照位;获取第一参照位对应字符的第一数值;基于所述第一数值确定出所述第一插入位置。其中,第一转换规则可以包括多种:比如将字符与十进制数值对应转换,将字符与ASCII码值进行对应转换。当将字符与本文档来自技高网...

【技术保护点】
1.一种生成文件名的方法,其特征在于,所述方法包括:获取上传文件的用户标识及服务器当前的秒级时间戳;利用第一转换规则将所述用户标识及所述秒级时间戳转换为第一字符串;根据所述服务器当前的微秒级时间戳计算第一标识符;利用加密算法将所述第一标识符转换为第二字符串;利用第二转换规则将所述第一字符串及所述第二字符串转换为所述文件名。

【技术特征摘要】
1.一种生成文件名的方法,其特征在于,所述方法包括:获取上传文件的用户标识及服务器当前的秒级时间戳;利用第一转换规则将所述用户标识及所述秒级时间戳转换为第一字符串;根据所述服务器当前的微秒级时间戳计算第一标识符;利用加密算法将所述第一标识符转换为第二字符串;利用第二转换规则将所述第一字符串及所述第二字符串转换为所述文件名。2.如权利要求1所述的方法,其特征在于,所述获取服务器当前的秒级时间戳,包括:调用date(‘YmdHis’,now())方法将所述秒级时间戳转换为所述秒级时间戳的字符串。3.如权利要求1或2所述的方法,其特征在于,利用第一转换规则将所述用户标识及所述秒级时间戳转换为第一字符串,包括:获取所述用户标识的字符串及所述秒级时间戳的字符串;根据所述秒级时间戳的字符串基于混淆算法确定出所述用户标识的字符串在所述秒级时间戳的字符串中的第一插入位置;将所述用户标识的字符串插入所述秒级时间戳的字符串中的所述第一插入位置。4.如权利要求3所述的方法,其特征在于,所述根据所述秒级时间戳的字符串基于混淆算法确定出所述用户标识的字符串在所述秒级时间戳的字符串中的第一插入位置,包括:确定所述秒级时间戳的字符串的第一参照位;获取第一参照位对应字符的第一数值;基于所述第一数值确定出所述第一插入位置。5.如权利要求1所述的方法,其特征在于,所述根据所述服务器当前的微秒级时间戳计算第一标识符之前,还包括:在所述第一字符串中添加第二标识符,形成第三字符串。6.如权利要求5所述的方法,其特征在于,所述在所述第一字符串中添加第二标识符,形成第三字符串,包括:确定所述第一字符串的第二参照位;获取所述第二参照位对应字符的第二数值;基于所述第二数值确定所述第一字符串中的...

【专利技术属性】
技术研发人员:熊超陈少杰张文明
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1