FormData 类
提供用于构建 multipart/form-encoded 消息主体的接口。
由 Http\Client 用于上传 POST/PUT 数据和文件。
命名空间: Cake\Http\Client
属性摘要
-
$_boundary protected
字符串
边界标记。
-
$_hasComplexPart protected
布尔值
此 FormData 对象是否包含复杂部分。
-
$_hasFile protected
布尔值
此 FormData 对象是否已附加文件。
-
$_parts protected
数组<Cake\Http\Client\FormDataPart>
表单数据中的部分。
方法摘要
-
__toString() public
将 FormData 及其部分转换为适合用于 HTTP 请求的字符串。
-
add() public
向数据添加新部分。
-
addFile() public
添加文件引用(以“@”开头的字符串)或文件句柄。
-
addMany() public
一次添加多个部分。
-
addRecursive() public
递归添加数据。
-
boundary() public
获取边界标记
-
contentType() public
获取此有效负载的内容类型。
-
count() public
返回此对象内部部分的计数。
-
hasFile() public
检查当前有效负载是否包含任何文件。
-
isMultipart() public
检查当前有效负载是否为 multipart。
-
newPart() public
用于创建新 Part 实例的方法
方法详情
add() ¶ public
add(Cake\Http\Client\FormDataPart|string $name, mixed $value = null): $this
向数据添加新部分。
部分的值可以是字符串、数组、整数、浮点数、文件句柄或实现了 __toString() 的对象。
如果 $value 是数组,则将添加多个部分。文件将从其当前位置读取并保存在内存中。
参数
-
Cake\Http\Client\FormDataPart|string
$name 要添加的部分的名称或部分数据对象。
-
mixed
$value 可选 部分的值。
返回值
$this
addFile() ¶ public
addFile(string $name, Psr\Http\Message\UploadedFileInterface|resource|string $value): Cake\Http\Client\FormDataPart
添加文件引用(以“@”开头的字符串)或文件句柄。
参数
-
string
$name 要使用的名称。
-
Psr\Http\Message\UploadedFileInterface|resource|string
$value 字符串文件名、文件句柄或 UploadedFileInterface 实例。
返回值
Cake\Http\Client\FormDataPart
addMany() ¶ public
addMany(array $data): $this
一次添加多个部分。
迭代参数并添加所有键值对。
参数
-
array
$data 要添加的数据数组。
返回值
$this
addRecursive() ¶ public
addRecursive(string $name, mixed $value): void
递归添加数据。
参数
-
string
$name 要使用的名称。
-
mixed
$value 要添加的值。
返回值
void
contentType() ¶ public
contentType(): string
获取此有效负载的内容类型。
如果此对象包含文件,则将使用 multipart/form-data
,否则将使用 application/x-www-form-urlencoded
。
返回值
字符串
isMultipart() ¶ public
isMultipart(): bool
检查当前有效负载是否为 multipart。
当您添加文件或使用 add() 与 Part 实例一起使用时,有效负载将变为 multipart。
返回值
布尔值
newPart() ¶ public
newPart(string $name, string $value): Cake\Http\Client\FormDataPart
用于创建新 Part 实例的方法
参数
-
string
$name 部分的名称。
-
string
$value 要添加的值。
返回值
Cake\Http\Client\FormDataPart