将for循环迭代变量存储为新的自增变量


Store for loop iteration variable into a new incremented variable

你好,我想为每个迭代存储变量值到一个具有新名称的新变量。我需要最后的结果是变量而不是数组。

循环

:

for($i = 0;$i < count($_FILES['file']['name']);$i++) {
$file = rand(1000,100000)."-".$_FILES['file']['name'][$i];
$new_file_name = strtolower($file);
$final_file=str_replace(' ','-',$new_file_name);     
}

那么在这个循环中,我需要这样写:

$data1 = $final_file;

其中$data1应该在每次循环时增加名称。

末尾,它应该生成如下内容:

$data1 = $final_file; - final_file have value of the first loop iteration
$data2 = $final_file; - final_file have value of the second loop iteration
$data3 = $final_file; - ....
$data4 = $final_file;
$data5 = $final_file;

动态设置变量可以使用额外的$:

$i = 1;
$variable_name = 'data' . $i;
$$variable_name = 'my value';

之后,代码$data1将被设置为"my value"。

但是,我建议您使用包含值的数组。

$data应该是一个数组。用$data[$i] = $final_filename;

填充for循环中的数组

之后您可以像这样访问文件名:$data[1], $data[2], $data[3], ...