我使用Uploadifive上传大文件。除了Android上的Firefox之外,这个工作正常。 从Google云端硬盘中选择上传文件时,该文件首先会下载到平板电脑,然后使用uploadifive上传。 但是Firefox正在重命名这个文件名;并放入tmp_之前和文件名后面的一些数字。 所以,如果test-1.mp3是我的文件名;我得到tmp_20950-test-1-5487457458.mp3。
我认为我无法克服Firefox完成的重命名。 但我可以通过脚本重命名它。 到目前为止,我可以删除'tmp_',但不能删除数字。 开头可能有4个或5个数字,最后可能有8个或10个数字。
if (preg_match('/tmp_/',$destination_file)){
$destination_file = str_replace('tmp_','',$destination_file);
}
所以我搜索命令来清除这些数字。困难在于不知道要清除多少数字。唯一的“固定”元素是数字之前和之前的条带“ - ”。也许我可以在我的命令中使用它?但不知道如何。
答案 0 :(得分:0)
您可以尝试使用此模式来获取文件名:
/^tmp_\d+-(.*?)-\d+\.(.*?)$/
第一个匹配将是文件名,第二个匹配是扩展名。