WP_Filesystem_ftpsockets::get_contents()publicWP 2.5.0

Reads entire file into a string.

Method of the class: WP_Filesystem_ftpsockets{}

No Hooks.

Return

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

Usage

$WP_Filesystem_ftpsockets = new WP_Filesystem_ftpsockets();
$WP_Filesystem_ftpsockets->get_contents( $file );
$file(string) (required)
Name of the file to read.

Changelog

Since 2.5.0 Introduced.

WP_Filesystem_ftpsockets::get_contents() code WP 6.4.3

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;
}