0

我有 php 数组 ($_FILE[fails]) 我只需要输出类型为“image/jpeg”或“image/jpg”的 thous 名称...

array(5) { ["name"]=> array(4) { [0]=> string(16) "3970867_460s.jpg" [1]=> string(12) "DSCI0783.JPG" [2]=> string(8) "dump.php" [3]=> string(0) "" } 
           ["type"]=> array(4) { [0]=> string(10) "image/jpeg" [1]=> string(10) "image/jpeg" [2]=> string(24) "application/octet-stream" [3]=> string(0) "" } 
           ["tmp_name"]=> array(4) { [0]=> string(27) "C:\Windows\Temp\phpC9C9.tmp" [1]=> string(27) "C:\Windows\Temp\phpC9DA.tmp" [2]=> string(27) "C:\Windows\Temp\phpC9DB.tmp" [3]=> string(0) "" } 
           ["error"]=> array(4) { [0]=> int(0) [1]=> int(0) [2]=> int(0) [3]=> int(4) } ["size"]=> array(4) { [0]=> int(101011) [1]=> int(55354) [2]=> int(12290) [3]=> int(0) } 
         }

怎么做?与foreach?

foreach ($_FILES["fails"] as $x => $y ) {
echo $y->....something here?
   if(($y->... == 'image/jpeg') AND (..)) {}
} 

谢谢!

4

3 回答 3

1
for ($i = 0; $i < count($_FILES['fails']['name']); $i++) {
    if ($_FILES['fails']['type'][$i] == "image/jpeg" || $_FILES['fails']['type'][$i] == "image/jpg") {
        echo "Name : " . $_FILES['fails']['name'][$i];
        echo "Type : " . $_FILES['fails']['type'][$i];
    }
}

这将回显数组中每个图像/jpg 或图像/jpeg 的名称和类型。

于 2012-04-26T09:42:29.620 回答
0

尝试一下:

$output = array();
foreach ($_FILES["fails"]['type'] as $k => $type ) {
    if($type == 'image/jpeg' || $type == 'image/jpg')
        $output[] = $_FILES["fails"]['name'][$k];
}
于 2012-04-26T09:41:01.213 回答
0

尝试

$allowTypes = array (
        "image/jpeg",
        "image/jpg" 
); // Ad More to list
$_FILE ['fails'] = array ();
foreach ( $_FILES ['image'] ['tmp_name'] as $key => $val ) {
    $fileName = $_FILES ['image'] ['name'] [$key];
    $fileType = $_FILES ['image'] ['type'] [$key];
    if ($_FILES ["image"] ["error"] [$key] != UPLOAD_ERR_OK) {
        $_FILE ['fails'] [] = $fileName;
        continue;
    }

    if (! in_array ( $fileType, $allowTypes )) {
        $_FILE ['fails'] [] = $fileName;
        continue;
    }
}
于 2012-04-26T09:49:53.393 回答