0
我是新的PHP,它是学习过程。Php从数组值中获取文件扩展名
我有一个html上传表单。我正在尝试重命名上传的文件。所以下面是获取文件扩展名的php代码,然后我添加一个php uniqid();重命名它。
获取文件扩展代码:
$img = $_FILES['images']['name'];
function getExtension($str)
{
$i = strrpos($str,".");
if (!$i) { return ""; }
$l = strlen($str) - $i;
$ext = substr($str,$i+1,$l);
return $ext;
}
$extension = getExtension($img);
$id = uniqid();
$newimg = $id.'.'.$extension;
好了,这对OK我只有一个上传文件,但如果我多上传表单然后我如何得到多个文件扩展名与此功能?
对于获得以下是我的PHP代码的多个文件:
$uploaded_files = array();
$upload_directory = dirname(__file__) . '/uploaded/'; //set upload directory
for ($i = 0; $i < count($_FILES['images']['name']); $i++)
{
$number_of_file_fields++;
if ($_FILES['images']['name'][$i] != '')
{ //check if file field empty or not
$number_of_uploaded_files++;
$uploaded_files[] = $_FILES['images']['name'][$i];
if (move_uploaded_file($_FILES['images']['tmp_name'][$i], $upload_directory . $_FILES['images']['name'][$i]))
{
$number_of_moved_files++;
}
}
}
HTML表单
<table width="1020" border="0" cellspacing="7" cellpadding="0">
<tr>
<td valign="top" width="250">
Upload your property picture
</td>
<td>
<div id="file_container">
<input name="images[]" type="file" class="tr2" />
<br />
</div>
<a href="javascript:void(0);" onClick="add_file_field();">Add another</a>
<input type="submit" value="Save & Continue" name="Submit" class="submit" />
</td>
</tr>
</table>
感谢您的回复@Asad。 $ oldarray是$ uploaded_files数组()? – Babu
@Babu是的,'$ oldarray'是具有不变文件名的数组,而'$ newarray'具有更改为唯一ID的文件名。 –
这个函数是从图像[]中获取所有文件并重命名它? – Babu