2016-12-12 13 views
0

こんにちは私はPHPで複数のファイルをアップロードしていますが、ファイル名に序数の接尾辞を付けたいと思います。 (なぜなら配列の)

$i = 0からループ開始のための

が、私の ので、私はラインで使用$i + 1で1ないゼロからの接尾辞のファイル名を追加したい:$newname = "id".$id."_".date('Y-m-d')."_".$i+1.".".$file_extension; が、それはここでは、構文エラーに

を取得していますされます私のコード。今の

$count = count($_FILES["images"]["name"]); 
$arr_newname = array(); 
for($i=0; $i <= $count; $i++){ 
       if ((($_FILES["images"]["type"][$i] == "image/gif") 
      || ($_FILES["images"]["type"][$i] == "image/jpeg") 
      || ($_FILES["images"]["type"][$i] == "image/png") 
      || ($_FILES["images"]["type"][$i] == "")) 
      && ($_FILES["images"]["size"][$i] < 9000000)) //9 MB 
      { 

       $split = explode(".", $_FILES["images"]["name"][$i]); 
       $file_extension = end($split); 

       $newname = "id".$id."_".date('Y-m-d')."_".$i+1.".".$file_extension; 
       $arr_newname[$i] = $newname; 
       move_uploaded_file($_FILES["images"]["tmp_name"][$i] , "images/location/".$newname); 

       } 
       else{ 
       echo "Invalid file; 
       } 
      } 

、私は$i=1からループ開始のために使用することによって、問題を解決し、代わりに、アレイ上$i-1を使用しています。それは私のために非常に醜いコードです。

for($i=1; $i <= $count; $i++){ 
    if ((($_FILES["images"]["type"][$i-1] == "image/gif") 
      || ($_FILES["images"]["type"][$i-1] == "image/jpeg") 
      || ($_FILES["images"]["type"][$i-1] == "image/png") 
      || ($_FILES["images"]["type"][$i-1] == "")) 
      && ($_FILES["images"]["size"][$i-1] < 9000000)) //9 MB 
      { 

       $split = explode(".", $_FILES["images"]["name"][$i-1]); 
       $file_extension = end($split); 

       $newname = "id".$id."_".date('Y-m-d')."_".$i.".".$file_extension; 
       $arr_newname[$i-1] = $newname; 
       move_uploaded_file($_FILES["images"]["tmp_name"][$i-1] , "images/location/".$newname); 

       } 
       else{ 
       echo "Invalid file; 
       } 
      } 

したがって、$ newnameファイルに$i+1を使用する別の方法はありますか?なぜこれらのアレイで$i-1がうまく動作するのですか。

答えて

3

($i+1) dude。

$newname = "id".$id."_".date('Y-m-d')."_".($i+1).".".$file_extension;

1

$newname = "id".$id."_".date('Y-m-d')."_".($i+1).".".$file_extension; 
では

$newname = "id".$id."_".date('Y-m-d')."_".$i+1.".".$file_extension; 

を交換してください

関連する問題