1

ファイルをアップロードするための入力フィールドがいくつかあります。

<input type=file name=logo />
<input type=file name=userfile />
<input type=file name=userfile1 />
.
.
.
<input type=file name=top />
<input type=file name=bottom />

すべてのファイルは、何らかの異なる方法で処理する必要があります。$_FILESたとえば、userfileで始まるかどうかを確認するにはどうすればよいですか?

4

4 に答える 4

5

mroe ユーザーファイルがある場合は、html マークアップを次のように変更できます。

<input type=file name=userfile[1] />
<input type=file name=userfile[2] />

そして、PHPで

foreach($_FILES['userfile'] as $i => $file) {
    processing
}

そうでなければ、名前が予想される文字列で始まるかどうかを確認できます (http://php.net/manual/en/function.substr.php)

<?
    if(substr($inputName, 0, 7) === "userfile")
?>
于 2012-07-03T07:49:34.267 に答える
0

ここに示す例は、http://php.net/manual/en/reserved.variables.files.phpに役立つ場合があります。

于 2012-07-03T07:50:47.130 に答える
0
foreach ($_FILES as $name => $file) {
    switch ($name) {
        case 'userfile' :
            ...
        case ... 
    }

    // or:

    if (substr($file, 0, 6) == 'userfile') {
        ...
    }
}

しかしforeach..switch、単純にできるのであれば、なぜそうするの

echo $_FILES['userfile']['name'];
// do something with $_FILES['userfile']...

echo $_FILES['userfile1']['name'];
// do something with $_FILES['userfile1']...
于 2012-07-03T07:51:12.350 に答える
0

if ($_FILES['name'] == 'userfile') { /ここにコード/} else {/ここにコード/} ?

私はそれをテストしませんでしたが、うまくいくはずだと思います。

于 2012-07-03T07:51:26.977 に答える