我目前正在使用此代码来上传视频和图像,图像可以正常工作,但视频却不能。
如果MP4 ||| AVI || WEBM || AVI必须排在第一个,但不是。你们可以帮我吗?我被困在这里
if(is_array($_FILES)) {
foreach ($_FILES['file']['name'] as $name => $value){
if(is_uploaded_file($_FILES['file']['tmp_name'][$name])) {
$name= $_FILES['file']['name'][$name];
$tmp_name= $_FILES['file']['tmp_name'][$name];
$position= strpos($name, ".");
$fileextension= substr($name, $position + 1);
$fileextension= strtolower($fileextension);
if (($fileextension == "mp4") && ($fileextension == "ogg") && ($fileextension == "webm")) {
$sourcePath = $_FILES['file']['tmp_name'][$name];
$file_parts = pathinfo($_FILES["file"]["name"][$name]);
$file_ext = pathinfo($_FILES["file"]["name"][$name]);
$targetPath = "../users/".$this->uid."/post/".$this->convertemail($filename) . "_" . $this->keys() . "_" . round(microtime(true)) . substr(md5(rand()), 0, 4) . "." .$file_ext['extension'];
move_uploaded_file($sourcePath, $targetPath);
} else {
$sourcePath = $_FILES['file']['tmp_name'][$name];
$filename=$_FILES["file"]["tmp_name"][$name];
$file_ext = pathinfo($_FILES["file"]["name"][$name]);
$targetPath = "../users/".$this->uid."/post/".$this->convertemail($filename) . "_" . $this->keys() . "_" . round(microtime(true)) . substr(md5(rand()), 0, 4) . "." .$file_ext['extension'];
$d = $this->compress($sourcePath, $targetPath, 90);
}
}
}
}
答案 0 :(得分:0)
$items = array();
foreach ($_FILES['file']['name'] as $name => $value){
if(is_uploaded_file($_FILES['file']['tmp_name'][$name])) {
$sourcePath = $_FILES['file']['tmp_name'][$name];
$filename=$_FILES["file"]["tmp_name"][$name];
$file_ext = pathinfo($_FILES["file"]["name"][$name]);
$items[] = $file_ext['extension'];
$allowed_vid = array("webm","mp4");
$targetPath = "../users/".$this->uid."/post/".$this->convertemail($filename) . "_" . $this->keys() . "_" . round(microtime(true)) . substr(md5(rand()), 0, 4) . "." .$file_ext['extension'];
if(!empty($this->in_array_any( $items, $allowed_vid ))) {
move_uploaded_file($sourcePath, $targetPath);
} else {
$d = $this->compress($sourcePath, $targetPath, 90);
}
}
}
答案 1 :(得分:0)
在此代码行中用“或”替换“ &&”:
if (($fileextension == "mp4") && ($fileextension == "ogg") && ($fileextension == "webm")) {