PHP数组,输出,仅输出类型=';图像/jpeg';
我有php数组($_FILE[fails]),我只需要输出千个名称,其中类型是“image/jpeg”或“image/jpg” 怎么做? 用foreachPHP数组,输出,仅输出类型=';图像/jpeg';,php,arrays,if-statement,Php,Arrays,If Statement,我有php数组($_FILE[fails]),我只需要输出千个名称,其中类型是“image/jpeg”或“image/jpg” 怎么做? 用foreach foreach ($_FILES["fails"] as $x => $y ) { echo $y->....something here? if(($y->... == 'image/jpeg') AND (..)) {} } 谢谢大家! 试试看: $output = array(); foreach ($_FI
foreach ($_FILES["fails"] as $x => $y ) {
echo $y->....something here?
if(($y->... == 'image/jpeg') AND (..)) {}
}
谢谢大家! 试试看:
$output = array();
foreach ($_FILES["fails"]['type'] as $k => $type ) {
if($type == 'image/jpeg' || $type == 'image/jpg')
$output[] = $_FILES["fails"]['name'][$k];
}
for($i=0;$i
这将回显数组中每个图像/jpg或图像/jpeg的名称和类型。试试看
$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;
}
}
您不应该信任客户端发送给您的MIME类型。用于获得更可靠的答案,但即使如此,您仍然容易受到XSS的攻击。唯一可靠的清理方法是获取像素数据并创建新图像。
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];
}
}
$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;
}
}