WP_Filesystem_ftpsockets::put_contents( string $file, string $contents, int|false $mode = false )
Writes a string to a file.
Parameters
- $file
-
(Required) Remote path to the file where to write the data.
- $contents
-
(Required) The data to write.
- $mode
-
(Optional) The file permissions as octal number, usually 0644.<br>
Default value: false
Return
(bool) True on success, false on failure.
Source
File: wp-admin/includes/class-wp-filesystem-ftpsockets.php
public function put_contents($file, $contents, $mode = false ) {
$temp = wp_tempnam( $file );
if ( ! $temphandle = @fopen($temp, 'w+') ) {
unlink($temp);
return false;
}
// The FTP class uses string functions internally during file download/upload
mbstring_binary_safe_encoding();
$bytes_written = fwrite( $temphandle, $contents );
if ( false === $bytes_written || $bytes_written != strlen( $contents ) ) {
fclose( $temphandle );
unlink( $temp );
reset_mbstring_encoding();
return false;
}
fseek( $temphandle, 0 ); // Skip back to the start of the file being written to
$ret = $this->ftp->fput($file, $temphandle);
reset_mbstring_encoding();
fclose($temphandle);
unlink($temp);
$this->chmod($file, $mode);
return $ret;
}
Changelog
Version | Description |
---|---|
2.5.0 | Introduced. |