WP_Filesystem_ftpsockets::get_contents( string $file ): string|false

In this article

Reads entire file into a string.

Parameters

$filestringrequired
Name of the file to read.

Return

string|false Read data on success, false if no temporary file could be opened, or if the file couldn’t be retrieved.

Source

public function get_contents( $file ) {
	if ( ! $this->exists( $file ) ) {
		return false;
	}

	$tempfile   = wp_tempnam( $file );
	$temphandle = fopen( $tempfile, 'w+' );

	if ( ! $temphandle ) {
		unlink( $tempfile );
		return false;
	}

	mbstring_binary_safe_encoding();

	if ( ! $this->ftp->fget( $temphandle, $file ) ) {
		fclose( $temphandle );
		unlink( $tempfile );

		reset_mbstring_encoding();

		return ''; // Blank document. File does exist, it's just blank.
	}

	reset_mbstring_encoding();

	fseek( $temphandle, 0 ); // Skip back to the start of the file being written to.
	$contents = '';

	while ( ! feof( $temphandle ) ) {
		$contents .= fread( $temphandle, 8 * KB_IN_BYTES );
	}

	fclose( $temphandle );
	unlink( $tempfile );

	return $contents;
}

Changelog

VersionDescription
2.5.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.