Web アプリケーションの開発に伴い、ファイルのアップロードは Web プログラム開発における一般的な機能の 1 つになりました。 PHP は強力なサーバー側プログラミング言語として、ファイルのアップロードを処理するための一連の関数も提供します。以下では、PHP で一般的に使用されるファイル アップロード関数を分析します。
move_uploaded_file() は、PHP で最も一般的に使用されるファイル アップロード関数の 1 つです。その機能は、アップロードされたファイルを一時ディレクトリから次の場所に移動することです。指定された目次。その構文は次のとおりです。
move_uploaded_file (string $filename, string $destination): bool
そのうち、$filename はソース ファイル パス、$destination は宛先ファイル パス、 bool 型の値を返します。移動が成功したかどうかを示します。
例:
$filename=$_FILES['file']['tmp_name']; $destination="upload/".$_FILES['file']['name']; if(move_uploaded_file($filename,$destination)){ echo "上传成功"; }else{ echo "上传失败"; }
is_uploaded_file() 関数は、指定されたファイルが HTTP POST 経由でアップロードされているかどうかを判断するために使用されます。そうである場合、この関数は true を返し、そうでない場合は false を返します。この関数の構文は次のとおりです。
is_uploaded_file (string $filename) : bool
このうち、$filename はテスト対象のファイル名を表し、戻り値は bool 型になります。 。
例:
if(is_uploaded_file($_FILES['file']['tmp_name'])){ echo "这是上传的文件"; }else{ echo "这不是上传的文件"; }
$_FILES は、アップロードされたファイル情報を取得するために使用される PHP のグローバル変数です。配列 。アップロードされたファイルごとに、$_FILES 配列には 5 つの要素が含まれます:
例:
echo "上传文件名:".$_FILES['file']['name']."<br>"; echo "上传文件类型:".$_FILES['file']['type']."<br>"; echo "上传文件大小:".$_FILES['file']['size']."<br>"; echo "上传文件的临时文件名:".$_FILES['file']['tmp_name']."<br>"; echo "上传文件的错误代码:".$_FILES['file']['error']."<br>";
move_uploaded_file() 関数と copy() 関数は両方とも、ファイル転送 ある場所から別の場所にコピーしますが、両者の違いはファイルのアップロードのセキュリティです。 move_uploaded_file() 関数はファイルを保存するときに、アップロードされたファイルが HTTP POST 経由でアップロードされたかどうかを確認し、一時ファイルは自動的に削除されます。 copy() 関数は、そのようなチェックを実行せずに単にファイルをコピーするだけであるため、セキュリティは比較的低いです。したがって、ファイルのアップロードを処理するときは、move_uploaded_file() 関数を使用するようにしてください。
まとめると、PHP ファイルのアップロード処理では、アップロードされたファイルの処理には move_uploaded_file() 関数を使用し、検証とファイル情報の取得には is_uploaded_file() 関数と $_FILES グローバル変数を使用することをお勧めします。これにより、アップロードされたファイルのセキュリティと信頼性が保証されます。
以上がPHP で一般的に使用されるファイル アップロード関数の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。