現(xiàn)如今,隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,各種類(lèi)型的視頻已經(jīng)深入人民生活的方方面面。網(wǎng)絡(luò)上的視頻服務(wù),也在相應(yīng)地產(chǎn)生了需求。為了響應(yīng)這個(gè)需求,php技術(shù)日漸完善。php上傳視頻也越來(lái)越簡(jiǎn)單。下面就讓我們來(lái)一探究竟。
上傳視頻,首先應(yīng)該知道上傳的視頻類(lèi)型。視頻類(lèi)型通常有:MOV、MPEG、AVI、MP4、FLV等等。那么,試想如果用戶(hù)只允許上傳MP4文件,閱讀完本文您就將不會(huì)感到困惑了。
實(shí)現(xiàn)代碼:
上面的代碼使用了php的in_array、explode、strtolower、end、time、rand、md5、is_dir、mkdir、move_uploaded_file等函數(shù),分別用來(lái)判斷數(shù)組種是否存在某個(gè)值、文件是否存在,將文件上傳至目標(biāo)路徑之中等等。
至此,我們通過(guò)php上傳視頻的一些基礎(chǔ)知識(shí)介紹到此為止了。當(dāng)然,寫(xiě)如此的文章是為了讓讀者了解上傳視頻基本流程,對(duì)于更加麻煩的上傳方式和復(fù)雜的原理,還是要需要大家去了解。
上傳視頻,首先應(yīng)該知道上傳的視頻類(lèi)型。視頻類(lèi)型通常有:MOV、MPEG、AVI、MP4、FLV等等。那么,試想如果用戶(hù)只允許上傳MP4文件,閱讀完本文您就將不會(huì)感到困惑了。
實(shí)現(xiàn)代碼:
<?php $allow_type = array('mp4');//允許上傳格式 $file_type = strtolower(end(explode('.', $_FILES['file']['name'])));//獲取文件格式 if(!in_array($file_type, $allow_type)){ echo json_encode(array('code'=>0, 'msg'=>'文件格式不支持上傳')); exit(); } //接著是文件的大小,我們可以設(shè)置上傳文件的大小,針對(duì)客戶(hù)段的限制,常規(guī)的限制入口如下: if($_FILES['file']['size']/1024/1024 > 100){ //判斷上傳文件大小是否超過(guò)規(guī)定大小,這里設(shè)置的是1個(gè)G。 echo json_encode(array('code'=>0, 'msg'=>'超過(guò)規(guī)定大小')); //提示信息并且退出程序 exit(); } //將文件放置路徑 $path = '/data/admin/uploadvideo/'; $filename = md5(time().rand(0,10000)).'.'.$file_type;//md5加密,隨機(jī)數(shù)+時(shí)間戳來(lái)創(chuàng)建新文件名 if(!is_dir($path)){ //目錄不存在,則自動(dòng)創(chuàng)建一個(gè) mkdir($path,0777,true);//參數(shù)two用的true是可以自己生成多級(jí)目錄,如果只是創(chuàng)建一級(jí)目錄,則該參數(shù)不填。 } //開(kāi)始文件上傳 move_uploaded_file($_FILES['file']['tmp_name'],$path.$filename); echo json_encode(array('code'=>1, 'msg'=>'上傳成功','url'=>$path.$filename)); exit(); ?>
上面的代碼使用了php的in_array、explode、strtolower、end、time、rand、md5、is_dir、mkdir、move_uploaded_file等函數(shù),分別用來(lái)判斷數(shù)組種是否存在某個(gè)值、文件是否存在,將文件上傳至目標(biāo)路徑之中等等。
至此,我們通過(guò)php上傳視頻的一些基礎(chǔ)知識(shí)介紹到此為止了。當(dāng)然,寫(xiě)如此的文章是為了讓讀者了解上傳視頻基本流程,對(duì)于更加麻煩的上傳方式和復(fù)雜的原理,還是要需要大家去了解。