wp-includes/functions.php:3646Wrapper for PHP filesize with filters and casting the result as an integer.
$pathstringint2 hooks fire while wp_filesize() runs, in this order:
Filters the result of wp_filesize() before the file_exists() PHP function is run.
function wp_filesize( $path ): int { /** * Filters the result of wp_filesize() before the file_exists() PHP function is run. * * @since 6.0.0 * @since 7.1.0 Negative values are now ignored, being treated the same as null. Numeric values are cast to integers. * * @param null|int $size The unfiltered value. Returning a non-negative number from the callback bypasses the filesize call. * @param string $path Path to the file. */ $size = apply_filters( 'pre_wp_filesize', null, $path ); if ( is_numeric( $size ) ) { $size = (int) $size; } if ( is_int( $size ) && $size >= 0 ) { return $size; } $size = file_exists( $path ) ? (int) filesize( $path ) : 0; /** * Filters the size of the file. * * @since 6.0.0 * @since 7.1.0 The return value is now always zero or greater. Numeric values are cast to integers. * * @param int $size The result of PHP filesize on the file. * @param string $path Path to the file. */ $size = apply_filters( 'wp_filesize', $size, $path ); if ( is_numeric( $size ) ) { $size = (int) $size; } else { $size = 0; } return max( 0, $size );}Introduced in 6.0.0. Unchanged from 6.7.7 through 7.1.0.
Signature, return type and hooks compared across 5 parsed releases.
src/wp-includes/functions.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.