primal / uploaded
用于 $_FILES 超全局的稳定性包装类
Requires
- php: >=5.3.10
This package is not auto-updated.
Last update: 2022-02-01 12:21:26 UTC
README
#Primal.Uploaded
由 Jarvis Badgley 创建并版权所有于 2012 年,chiper at chipersoft dot com。
Primal.Uploaded 是 PHP $_FILES
超全局的包装类,旨在使具有嵌套数组字段的表单上传(即名为 name[subname][]
语法的文件输入表单元素)更容易处理。它将 PHP 生成的数组汤转换为干净的迭代文件对象集合,可以像正常的 $_POST 内容一样访问。
请参阅包含的 example.php 文件以了解用法。
##文件对象
这是 $_FILES
包装类。它是一个单例实现,只能通过调用 Primal\Uploaded\Files::GetInstance()
来实例化。返回的结果将是一个文件的可迭代集合。
可以通过数组结构(例如:uploads[]
变为 $files['uploads'][0]
)或作为一个整体的迭代集合(例如:foreach ($files as $file) {}
)访问单个文件字段;
该集合将仅包含收到文件数据的输入记录(空字段将被忽略),并包括不完整或过大的上传。在处理文件之前测试文件的 valid
属性非常重要。
如果对象遇到致命的上传问题,例如不可写的上传目录(UPLOAD_ERR_CANT_WRITE
),它将抛出 UploadException
。
##文件对象
包装器返回的文件对象包含以下属性
field
:文件上传所使用的表单元素名称index
:如果名称处于数组语法中,则 index 将包含此文件的特定数组索引valid
:布尔值,标识文件是否正确上传path
:字符串,文件的当前临时位置basename
:原始文件名filename
:原始文件名,不包括扩展名。extension
:原始文件名的扩展名部分error
:整数,标识文件的状态。注意,这与 PHP 文件上传常量不匹配。type
:文件的 mime-type,根据文件内容或扩展名自动确定。size
:整数,文件的总大小(以字节为单位)。
提供了以下函数
moveTo($path)
:将上传的文件移动到新的目标位置。open($mode)
:打开文件进行读取和/或写入,并返回一个 SplFileObject。getRawFileRecord()
:返回此上传的原始$_FILES
数组
##许可证
Primal.Uploaded 在 MIT 许可证下发布。无需归属。有关详细信息,请参阅附带的 LICENSE 文件。