WP_Filesystem_FTPext::put_contents( string $file, string $contents, int|false $mode = false )
Writes a string to a file.
Parameters
- $file
-
(string) (Required) Remote path to the file where to write the data.
- $contents
-
(string) (Required) The data to write.
- $mode
-
(int|false) (Optional) The file permissions as octal number, usually 0644.
Default value: false
Return
(bool) True on success, false on failure.
Source
File: wp-admin/includes/class-wp-filesystem-ftpext.php
public function put_contents( $file, $contents, $mode = false ) {
$tempfile = wp_tempnam( $file );
$temphandle = fopen( $tempfile, 'wb+' );
if ( ! $temphandle ) {
unlink( $tempfile );
return false;
}
mbstring_binary_safe_encoding();
$data_length = strlen( $contents );
$bytes_written = fwrite( $temphandle, $contents );
reset_mbstring_encoding();
if ( $data_length !== $bytes_written ) {
fclose( $temphandle );
unlink( $tempfile );
return false;
}
fseek( $temphandle, 0 ); // Skip back to the start of the file being written to.
$ret = ftp_fput( $this->link, $file, $temphandle, FTP_BINARY );
fclose( $temphandle );
unlink( $tempfile );
$this->chmod( $file, $mode );
return $ret;
} Changelog
| Version | Description |
|---|---|
| 2.5.0 | Introduced. |
© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/wp_filesystem_ftpext/put_contents