<?php
ini_set('error_reporting', E_ALL); // error reporting
// save uploaded files
$i = 1;
while (list ($item, $value) = each ($_FILES)){
if(substr($item, 0, 11) == 'imageloader'){
$fileName = $i.'.'.substr($item, 11, 3); // make file name
move_uploaded_file($value['tmp_name'], $fileName); // save file
$i++;
}
}
?>
Мне нужно использовать foreach. Я пытался, но это просто не работает. Может кто-нибудь помочь мне изменить EACH
к FOREACH
цикл?
+ Изменить while (list ($item, $value) = each ($_FILES)){
в
foreach( $_FILES as $key => $file ) { }
приведенный выше синтаксис действительно старый и не должен использоваться.
Кроме того, вы не получаете расширение должным образом, чтобы использовать расширение
$ext = pathinfo($file['name'], PATHINFO_EXTENSION);
это для каждого синтаксисы:
foreach (array_expression as $value)
statement
foreach (array_expression as $key => $value)
statement
в вашем случае это будет:
<?php
ini_set('error_reporting', E_ALL); // error reporting
// save uploaded files
$i = 1;
foreach ($_FILES as $item => $value)){
if(substr($item, 0, 11) == 'imageloader'){
$fileName = $i.'.'.substr($item, 11, 3); // make file name
move_uploaded_file($value['tmp_name'], $fileName); // save file
$i++;
}
}
?>