이 기사의 예에서는 PHP 파일 업로드 처리 방법을 설명합니다. 참고하실 수 있도록 자세한 내용은 다음과 같습니다.
최근 오랫동안 고민했던 일이 있어서 처음 생각을 공유하고 싶습니다.
PHP의 업로드 메커니즘은 완전히 캡슐화되어 있으며, 단 몇 줄의 코드로 구현할 수 있습니다.
파일을 임시 디렉터리에 업로드 –>
이것은 PHP 업로드 프로세스이거나 중간에 추가 확인을 수행합니다. 예를 들어, 문서가 업로드를 통해 제출되었는지, 아니면 당사
에서 파일 확장자를 허용하는지 및 일련의 확인을 통해 확인합니다. 제가 제시한 간단한 코드는 출발점이라고 볼 수 있습니다.
$targetFolder = '/uploads'; // 定义根目录 if (!empty($_FILES)) { $tempFile = $_FILES['Filedata']['tmp_name']; if(is_uploaded_file($tempFile)) { $targetPath = $_SERVER['DOCUMENT_ROOT'] . $targetFolder; $targetFile = rtrim($targetPath,'/') . '/' . $_FILES['Filedata']['name']; $fileTypes = array('jpg','jpeg','gif','png'); // 允许的后缀扩展 $fileParts = pathinfo($_FILES['Filedata']['name']); if (in_array($fileParts['extension'],$fileTypes)) { move_uploaded_file($tempFile,$targetFile); echo '1'; } else { echo '非法上传文档.'; } }else { echo "非法上传文件"; } }
위 방법은 기본적으로 파일 업로드 요구 사항을 충족합니다. 하지만 그것은 나에게 필요한 것이 아닙니다.
업로드 기능
요구사항: 먼저 문서를 업로드하려면 클릭한 다음 JS가 업로드된 후 값이 반환됩니다. 현재 타임스탬프 이름을 표시합니다. 파일은 문서 이름 상자에 있습니다.
그런 다음 제출을 클릭하여 양식을 제출합니다.
서버는 제출된 양식을 처리하고 업로드된 파일의 이름을 변경합니다.
문제도 발생합니다. 서버는 IIS이고 매핑을 사용하여 구현한 가상 디렉터리입니다.
이 경우 $_SERVER['DOCUMENT_ROOT']가 PHP 사이트의 루트 디렉터리에 없습니다.
업로드 기능이 완료되었으나 해당 파일을 다운로드할 수 없습니다. 서버 보안상의 이유로 여전히 PHP 사이트에 파일을 배치할 계획입니다.
그러다가 생각의 한계에 빠졌습니다.
다시 생각해 보세요:
왜 PHP의 업로드 메커니즘을 다시 구현할 필요가 없나요?
PHP는 임시 디렉터리에 파일을 먼저 넣지 않나요? 그렇다면 JS 업로드가 성공한 후의 디렉터리도 임시 디렉터리인
이라고 가정하고 양식을 다시 제출할 때 파일을 복사하는 이유는 무엇입니까? 필요한 기능을 완료하려면 지정된 디렉토리로 이동하십시오.
PHP에는 파일 복사 기능인 Copy()가 있고 rename() 기능과 협력합니다. 이로써 업로드된 파일의 2차 이동 및 이름변경이 완료됩니다.
참고: Windows 플랫폼에서 0바이트 파일을 복사하는 경우 copy()는 FALSE를 반환하지만 파일은 올바르게 복사됩니다.
그러면 PHP는 파일 처리에 있어서 Liunx의 파일 처리 메커니즘을 적극적으로 참조합니다. PHP의 파일 작업 효율성은 I/O 쓰기 및 운영 체제와 관련이 있습니다.
요약: 사실 문제를 해결하는 방법은 여러 가지가 있으며, 생각을 제한하기 위해 스스로 원을 그리지 마세요.
이 글이 PHP 프로그래밍에 종사하는 모든 분들께 도움이 되기를 바랍니다.
PHP 파일 업로드 처리 사례 분석에 관한 더 많은 글은 PHP 중국어 홈페이지를 주목해주세요!

PHP에서 Password_hash 및 Password_Verify 기능을 사용하여 보안 비밀번호 해싱을 구현해야하며 MD5 또는 SHA1을 사용해서는 안됩니다. 1) Password_hash는 보안을 향상시키기 위해 소금 값이 포함 된 해시를 생성합니다. 2) Password_verify 암호를 확인하고 해시 값을 비교하여 보안을 보장합니다. 3) MD5 및 SHA1은 취약하고 소금 값이 부족하며 현대 암호 보안에는 적합하지 않습니다.

PHP는 동적 웹 개발 및 서버 측 응용 프로그램에 사용되는 서버 측 스크립팅 언어입니다. 1.PHP는 편집이 필요하지 않으며 빠른 발전에 적합한 해석 된 언어입니다. 2. PHP 코드는 HTML에 포함되어 웹 페이지를 쉽게 개발할 수 있습니다. 3. PHP는 서버 측 로직을 처리하고 HTML 출력을 생성하며 사용자 상호 작용 및 데이터 처리를 지원합니다. 4. PHP는 데이터베이스와 상호 작용하고 프로세스 양식 제출 및 서버 측 작업을 실행할 수 있습니다.

PHP는 지난 수십 년 동안 네트워크를 형성했으며 웹 개발에서 계속 중요한 역할을 할 것입니다. 1) PHP는 1994 년에 시작되었으며 MySQL과의 원활한 통합으로 인해 개발자에게 최초의 선택이되었습니다. 2) 핵심 기능에는 동적 컨텐츠 생성 및 데이터베이스와의 통합이 포함되며 웹 사이트를 실시간으로 업데이트하고 맞춤형 방식으로 표시 할 수 있습니다. 3) PHP의 광범위한 응용 및 생태계는 장기적인 영향을 미쳤지 만 버전 업데이트 및 보안 문제에 직면 해 있습니다. 4) PHP7의 출시와 같은 최근 몇 년간의 성능 향상을 통해 현대 언어와 경쟁 할 수 있습니다. 5) 앞으로 PHP는 컨테이너화 및 마이크로 서비스와 같은 새로운 도전을 다루어야하지만 유연성과 활발한 커뮤니티로 인해 적응력이 있습니다.

PHP의 핵심 이점에는 학습 용이성, 강력한 웹 개발 지원, 풍부한 라이브러리 및 프레임 워크, 고성능 및 확장 성, 크로스 플랫폼 호환성 및 비용 효율성이 포함됩니다. 1) 배우고 사용하기 쉽고 초보자에게 적합합니다. 2) 웹 서버와 우수한 통합 및 여러 데이터베이스를 지원합니다. 3) Laravel과 같은 강력한 프레임 워크가 있습니다. 4) 최적화를 통해 고성능을 달성 할 수 있습니다. 5) 여러 운영 체제 지원; 6) 개발 비용을 줄이기위한 오픈 소스.

PHP는 죽지 않았습니다. 1) PHP 커뮤니티는 성능 및 보안 문제를 적극적으로 해결하고 PHP7.x는 성능을 향상시킵니다. 2) PHP는 최신 웹 개발에 적합하며 대규모 웹 사이트에서 널리 사용됩니다. 3) PHP는 배우기 쉽고 서버가 잘 수행되지만 유형 시스템은 정적 언어만큼 엄격하지 않습니다. 4) PHP는 컨텐츠 관리 및 전자 상거래 분야에서 여전히 중요하며 생태계는 계속 발전하고 있습니다. 5) Opcache 및 APC를 통해 성능을 최적화하고 OOP 및 설계 패턴을 사용하여 코드 품질을 향상시킵니다.

PHP와 Python에는 고유 한 장점과 단점이 있으며 선택은 프로젝트 요구 사항에 따라 다릅니다. 1) PHP는 웹 개발, 배우기 쉽고 풍부한 커뮤니티 리소스에 적합하지만 구문은 현대적이지 않으며 성능과 보안에주의를 기울여야합니다. 2) Python은 간결한 구문과 배우기 쉬운 데이터 과학 및 기계 학습에 적합하지만 실행 속도 및 메모리 관리에는 병목 현상이 있습니다.

PHP는 동적 웹 사이트를 구축하는 데 사용되며 해당 핵심 기능에는 다음이 포함됩니다. 1. 데이터베이스와 연결하여 동적 컨텐츠를 생성하고 웹 페이지를 실시간으로 생성합니다. 2. 사용자 상호 작용 및 양식 제출을 처리하고 입력을 확인하고 작업에 응답합니다. 3. 개인화 된 경험을 제공하기 위해 세션 및 사용자 인증을 관리합니다. 4. 성능을 최적화하고 모범 사례를 따라 웹 사이트 효율성 및 보안을 개선하십시오.

PHP는 MySQLI 및 PDO 확장 기능을 사용하여 데이터베이스 작업 및 서버 측 로직 프로세싱에서 상호 작용하고 세션 관리와 같은 기능을 통해 서버 측로 로직을 처리합니다. 1) MySQLI 또는 PDO를 사용하여 데이터베이스에 연결하고 SQL 쿼리를 실행하십시오. 2) 세션 관리 및 기타 기능을 통해 HTTP 요청 및 사용자 상태를 처리합니다. 3) 트랜잭션을 사용하여 데이터베이스 작업의 원자력을 보장하십시오. 4) SQL 주입 방지, 디버깅을 위해 예외 처리 및 폐쇄 연결을 사용하십시오. 5) 인덱싱 및 캐시를 통해 성능을 최적화하고, 읽을 수있는 코드를 작성하고, 오류 처리를 수행하십시오.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

WebStorm Mac 버전
유용한 JavaScript 개발 도구

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기
