Class FormData
Provides an interface for building multipart/form-encoded message bodies.
Used by Http\Client to upload POST/PUT data and files.
Property Summary
- $_boundary protected
stringBoundary marker.
- $_hasComplexPart protected
boolWhether this formdata object has a complex part.
- $_hasFile protected
boolWhether this formdata object has attached files.
- $_parts protected
arrayCake\Http\Client\FormDataPart>The parts in the form data.
Method Summary
-
__toString() public
Converts the FormData and its parts into a string suitable for use in an HTTP request.
-
add() public
Add a new part to the data.
-
addFile() public
Add either a file reference (string starting with @) or a file handle.
-
addMany() public
Add multiple parts at once.
-
addRecursive() public
Recursively add data.
-
boundary() public
Get the boundary marker
-
contentType() public
Get the content type for this payload.
-
count() public
Returns the count of parts inside this object.
-
hasFile() public
Check whether the current payload has any files.
-
isMultipart() public
Check whether the current payload is multipart.
-
newPart() public
Method for creating new instances of Part
Method Detail
__toString() public
__toString(): string
Converts the FormData and its parts into a string suitable for use in an HTTP request.
Returns
stringadd() public
add(Cake\Http\Client\FormDataPart|string $name, mixed $value = null): $this
Add a new part to the data.
The value for a part can be a string, array, int, float, filehandle, or object implementing __toString()
If the $value is an array, multiple parts will be added. Files will be read from their current position and saved in memory.
Parameters
-
Cake\Http\Client\FormDataPart|string$name The name of the part to add, or the part data object.
-
mixed$value optional The value for the part.
Returns
$thisaddFile() public
addFile(string $name, string|resourcePsr\Http\Message\UploadedFileInterface $value): Cake\Http\Client\FormDataPart
Add either a file reference (string starting with @) or a file handle.
Parameters
-
string$name The name to use.
-
string|resourcePsr\Http\Message\UploadedFileInterface$value Either a string filename, or a filehandle, or a UploadedFileInterface instance.
Returns
Cake\Http\Client\FormDataPartaddMany() public
addMany(array $data): $this
Add multiple parts at once.
Iterates the parameter and adds all the key/values.
Parameters
-
array$data Array of data to add.
Returns
$thisaddRecursive() public
addRecursive(string $name, mixed $value): void
Recursively add data.
Parameters
-
string$name The name to use.
-
mixed$value The value to add.
Returns
voidboundary() public
boundary(): string
Get the boundary marker
Returns
stringcontentType() public
contentType(): string
Get the content type for this payload.
If this object contains files, multipart/form-data will be used, otherwise application/x-www-form-urlencoded will be used.
Returns
stringcount() public
count(): int
Returns the count of parts inside this object.
Returns
inthasFile() public
hasFile(): bool
Check whether the current payload has any files.
Returns
boolisMultipart() public
isMultipart(): bool
Check whether the current payload is multipart.
A payload will become multipart when you add files or use add() with a Part instance.
Returns
boolnewPart() public
newPart(string $name, string $value): Cake\Http\Client\FormDataPart
Method for creating new instances of Part
Parameters
-
string$name The name of the part.
-
string$value The value to add.
Returns
Cake\Http\Client\FormDataPartProperty Detail
$_boundary protected
Boundary marker.
Type
string$_hasComplexPart protected
Whether this formdata object has a complex part.
Type
bool$_hasFile protected
Whether this formdata object has attached files.
Type
bool$_parts protected
The parts in the form data.
Type
arrayCake\Http\Client\FormDataPart>
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.4/class-Cake.Http.Client.FormData.html