我有一个随机名称的.php文件。我想在按下特定按钮时将其重命名为另一个随机名称。
function generateRandomString($length = 10) {
$characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
$charactersLength = strlen($characters);
$randomString = '';
for ($i = 0; $i < $length; $i++) {
$randomString .= $characters[rand(0, $charactersLength - 1)];
}
return $randomString;
}
if (isset($_SESSION['submit'])) {
rename(, generateRandomString())
}
我在这里有这段代码,我认为我所做的一切都正确,但是我不知道如何执行重命名功能
答案 0 :(得分:1)
答案 1 :(得分:0)
您需要在PHP文档中查找named()函数:http://php.net/manual/en/function.rename.php
if (isset($_SESSION['submit'])) {
$oldFileName = 'foo.txt';
$newFileName = generateRandomString() . '.txt';
rename($oldFileName, $newFileName);
}
这是其基本形式,但是在生产中,您将需要处理错误并存储新文件名等。
答案 2 :(得分:0)
改善功能。
这将使用字母/数字对数组进行混洗,并获取前十个字符。
这应该比循环更有效。
$characters = array ('0','1','2','3','4','5','6','7','8','9',
'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z',
'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',
);
shuffle($characters);
return implode("", array_slice($characters, 0,10));