>  기사  >  백엔드 개발  >  PHP로 파일을 업로드하는 방법은 무엇입니까? 우리가 주의해야 할 점은 무엇입니까?

PHP로 파일을 업로드하는 방법은 무엇입니까? 우리가 주의해야 할 점은 무엇입니까?

慕斯
慕斯원래의
2021-06-18 15:40:252644검색

이전 기사에서는 "PHP로 간단한 그래프 계산기를 편집하는 방법은 무엇입니까?"에 대해 소개했습니다. 》이 기사에서는 계속해서 PHP에서 파일을 업로드하는 방법을 소개합니다. 우리가 주의해야 할 점은 무엇입니까? 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.

PHP로 파일을 업로드하는 방법은 무엇입니까? 우리가 주의해야 할 점은 무엇입니까?

파일 업로드.

파일 업로드에 대한 후속 질문입니다.

업로드 기능 코드 재사용 실현: 파일 업로드 기능 핵심 캡슐화

기능: 파일 업로드.

조건: 조건이 정해져 있습니다.

업로드할 파일 정보: 5개 요소의 해당 배열

1. 파일 형식이 외부적으로 적절합니까?

2. 파일은 어디에 저장되나요?

3. 파일 형식 제한(파일 접미사)?

4. 파일 크기 제한이 있습니까?

결과: 파일 업로드가 이루어졌습니다.

1. 성공: 결과는 나중에 볼 수 있습니다. 파일의 경로와 파일 이름을 반환해야 합니다(데이터베이스에 저장).

2. 실패: false를 반환하고 오류 이유를 지정합니다(참조 매개변수).

(1) 업로드 기능 캡슐화

먼저 파일 업로드(단일 파일)를 구현하는 새 파일을 만듭니다.

  • @param1 배열 $file," 필수. 업로드된 파일 정보: - - 차원 5요소 배열(nametmp_ nameerrorsizetype)

  • @param2 배열 $allow_ _type, allowed. 업로드된 MIME 유형

  • @param3 string $path, 저장된 경로

  • @param4 string &$error, if 이유 오류

  • @param5 array $allow_ format = array(), 업로드된 파일 형식

  • @param6 int $max_ size = 20000 업로드에 허용되는 최대값

그런 다음 함수 작성을 계속하세요( function) 코드는 다음과 같습니다.

<?php
function up1oad_single($a11ow_type, $path, &$error , $al1ow_format = array(),$max_size =
2000000){
?>

이 경우 우리의 함수는 기본적으로 정의됩니다.

(2) 요청이 유효한지 확인합니다.

코드는 다음과 같습니다.

function upload_ single($file,$a11ow_ .type, $path, &$error, $al1ow_ format = array(),$max_ _size =
2000000){
//判断文件是否有效
if(!is_ array($file)|| !isset($file[ &#39;error&#39;])){
1/文件无效
$error = &#39;不是- 一个有效的.上传文件! &#39;;
return false;

(3) 요청이 유효한지 확인합니다. 파일 저장 경로가 유효한지

if(!is_ _dir($path)){
//路径不存在
$error = &#39;文件存储路径不存在! &#39;;
return false;

(4) 파일 자체의 업로드 과정에 오류가 있는지 확인 : error

switch($file[ &#39;error&#39;]){
case 1:
case 2:
$error = &#39;文件超出服务器允许大小! &#39;;
return false;
case 3:
$error = &#39;文件. 上传过程中出现问题,只上传一.部分! &#39;;
return false;
case 4:
$error = &#39;用户没有选中要上传的文件! &#39;;
return false;
case 6:
case 7 :
$error = &#39;文件保存失败! &#39;;
return false;

추천 학습 : "PHP Video Tutorial"

위 내용은 PHP로 파일을 업로드하는 방법은 무엇입니까? 우리가 주의해야 할 점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.