php $_FILES详解$_FILES
经由 HTTP POST 文件上传而提交至脚本的变量。类似于旧数组 $HTTP_POST_FILES 数组(依然有效,但反对使用)。详细信息请参阅 POST 方法上传。
$_FILES数组内容如下:
<input type="file" name="userfile">
$_FILES['userfile']['name']
客户端机器文件的原名称。
$_FILES['userfile']['type']
文件的 MIME 类型,需要浏览器提供该信息的支持,例如“image/gif”。
$_FILES['userfile']['size']
已上传文件的大小,单位为字节。
$_FILES['userfile']['tmp_name']
文件被上传后在服务端储存的临时文件名。
$_FILES['userfile']['error']
和该文件上传相关的错误代码。['error'] 是在 PHP 4.2.0 版本中增加的。
注: 在 PHP 4.1.0 版本以前该数组的名称为 $HTTP_POST_FILES,它并不像 $_FILES 一样是自动全局变量。PHP 3 不支持 $HTTP_POST_FILES 数组。
move_uploaded_file -- 将上传的文件移动到新位置
说明
bool move_uploaded_file ( string filename, string destination )
本函数检查并确保由 filename 指定的文件是合法的上传文件(即通过 PHP 的 HTTP POST 上传机制所上传的)。如果文件合法,则将其移动为由 destination 指定的文件。
如果 filename 不是合法的上传文件,不会出现任何操作,move_uploaded_file() 将返回 FALSE。
如果 filename 是合法的上传文件,但出于某些原因无法移动,不会出现任何操作,move_uploaded_file() 将返回 FALSE。此外还会发出一条警告。
这种检查显得格外重要,如果上传的文件有可能会造成对用户或本系统的其他用户显示其内容的话
PHP单文件上传
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>单文件上传</title>
<style type="text/css">
<!--
body,td,th {
font-size: 12px;
}
body {
margin-left: 10px;
margin-top: 10px;
margin-right: 10px;
margin-bottom: 10px;
}
-->
</style></head>
<body>
<form action="" method="post" enctype="multipart/form-data" name="form">
<input name="up_file" type="file" />
<input type="submit" name="submit" value="上传" />
</form>
<?php
if(!empty($_FILES[up_file][name])){
$fileinfo = $_FILES[up_file];
if($fileinfo['size'] < 1000000 && $fileinfo['size'] > 0){
move_uploaded_file($fileinfo['tmp_name'],$fileinfo['name']);
echo '上传成功';
}else{
echo '文件太大或未知';
}
}
?>
</body>
</html>
分享到:
相关推荐
`PHP`中的`$_FILES`全局变量是用来处理文件上传的核心组件。当用户通过HTML表单中的`<input type="file">`字段提交文件时,服务器端的PHP脚本可以通过`$_FILES`数组来访问和处理这些文件。让我们深入探讨`$_FILES`...
用PHP上传文件时,我们会用程序去监听浏览器发送过来的文件信息,首先会通 过$_FILES[fieldName]['error']的不同数值来判断此欲上传的文件状态是否正常。$_FILES[fieldName] ['error']==0代表一切正常,其它数值的...
- 注意:在 PHP 4.3.0 之前,`$_FILES` 中的信息也被包含在 `$_REQUEST` 中,但此行为已在 PHP 4.3.0 中改变。 9. **$_SESSION**: 包含与当前会话相关的数据。 - 示例:设置会话变量 `user_id` 可以通过 `$_...
例如,在存在安全漏洞的PHP代码中,可能通过检查$_FILES数组中的文件是否存在,然后复制临时文件到目标路径。但这种方法存在明显的安全隐患,容易受到恶意伪造$_FILES数组的攻击,导致安全风险。 为了解决文件上传...
- **`$_FILES`**:包含上传文件的信息。 - **`$_SERVER`**:包含网页服务器中有用的信息。 - **`$_ENV`**:包含环境变量数值,数组的键名是环境变量的名字。 **`$_REQUEST`** 是一个特殊的超全局变量,它是 `$_GET`...
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_FILES['file'])) { // 处理上传逻辑 } ``` - **`$_SERVER['REQUEST_METHOD']`**: 获取当前请求的方法(GET、POST等)。 - **`isset($_FILES['file'])`**: ...
3. PHP中的$_FILES数组 在PHP中,文件上传后可以通过全局数组$_FILES来访问上传的文件信息。$_FILES是一个二维数组,包含了所有上传文件的信息,包括文件的临时存储路径(tmp_name)、文件名(name)、文件大小...
PHP中$GLOBALS和global都可以实现全局...$GLOBALS,$_SERVER,$_GET,$_POST,$_FILES,$_COOKIE,$_SESSION,$_REQUEST,$_ENV。 官方说明: $GLOBALS — 引用全局作用域中可用的全部变量。 一个包含了全部变量的全局
if (isset($_FILES['file']) && $_FILES['file']['error'] === UPLOAD_ERR_OK) { $target_dir = 'uploads/'; $target_file = $target_dir . basename($_FILES['file']['name']); move_uploaded_file($_FILES['...
在PHP开发中,服务器变量是一类非常重要的环境变量,它们由Web服务器设置,并且可以通过`$_SERVER`超全局数组访问。这些变量提供了关于当前运行脚本和服务器环境的信息,对于理解用户的请求、配置环境或进行安全验证...
PHP提供了内置的`$_FILES`全局数组来处理文件上传请求。当用户通过表单提交文件时,服务器端的PHP脚本可以通过这个数组获取到文件的相关信息,如文件名、大小、类型、临时存储路径等。 2. **表单设置** 要实现...
- 使用PHP的`$_FILES`超全局变量来处理文件上传。 - 示例代码如下: ```php if ($_POST['post_flag'] == 1) { $target_dir = "upload_file/"; $target_file = $target_dir . basename($_FILES["myfile"]["name...
通过`$_SERVER`全局变量获取客户端IP地址,以及当前的时间戳和日期。在实际应用中,这些信息可以存储在数据库中,以便跟踪邮件的阅读状态。 总结:这些PHP代码片段展示了如何利用PHP进行性能优化、文件操作和用户...
- `$_FILES` - `$_ENV` - `$_HTTP_COOKIE_VARS` - `$_HTTP_ENV_VARS` - `$_HTTP_GET_VARS` - `$_HTTP_POST_FILES` - `$_HTTP_POST_VARS` - `$_HTTP_SERVER_VARS` 这些变量都是PHP中的可输入变量,它们接收来自...
PHP提供了一系列内置函数,如`move_uploaded_file()`和`$_FILES`全局数组,来处理文件上传。当SWFUpload发送文件到服务器时,PHP脚本接收这些文件,并可以执行验证、存储、重命名等操作。例如,可以检查文件类型、...
`$_FILES`全局数组包含了所有上传文件的信息,包括文件名、大小、类型等。例如: ```php $fileName = $_FILES['fileToUpload']['name']; $fileType = $_FILES['fileToUpload']['type']; $fileSize = $_FILES['...