2010-07-28 83 views
2

我有多个上传的形式,即上载后重命名图片:多个上传和图像名称

for ($i = 0; $i < count($_FILES['images']['name']); $i++) { 
$ext= end(explode(".", $_FILES['images']['name'][$i])); 
$name = rand(1111111,9999999).'.'.$ext; 
} 

随着print_r($name)输出是一个字符串image1.jpgimage2.jpgimage3.jpg。 为什么输出是一个字符串?我怎么给一个数组? 在此先感谢

+2

不要把计数()中的条件部分的循环。 PHP内核不会缓存这个值,并且每次循环时都会执行数组的“重新计数”。在循环之前将计数放在$ count变量中。 – 2010-07-28 11:56:54

回答

1
$name[] = rand(1111111,9999999).'.'.$ext; 

会做的伎俩

奖励:

$ext = pathinfo($_FILES['images']['name'][$i], PATHINFO_EXTENSION); 
+0

@fabric; 现在的输出是'阵列 ( [0] => 9292066.jpg ) 阵列 ( [0] => 9292066.jpg [1] => 5713362.jpg ) 阵列 ( => 9292066.jpg [1] => 5713362.jpg [2] => 4854885.jpg )' – TheNone 2010-07-28 10:53:53

+0

难道你不是在找? – fabrik 2010-07-28 11:00:19

+0

我想要这样的东西:Array([0] => 9292066.jpg)Array([1] => 5713362.jpg)Array([2] => 4854885.jpg)。 因为我想保存数据库中的图像名称(我不知道如果它是一个正确的方式) – TheNone 2010-07-28 11:05:52