A WordPress-centric search engine for devs and theme authors



_wp_check_existing_file_names ›

Since5.3.1
Deprecatedn/a
_wp_check_existing_file_names ( $filename, $files )
Access:
  • private
Parameters: (2)
  • (string) $filename The file name to check.
    Required: Yes
  • (array) $files An array of existing files in the directory.
    Required: Yes
Returns:
  • (bool) True if the tested file name could match an existing file, false otherwise.
Defined at:
Codex:

Helper function to check if a file name could match an existing image sub-size file name.



Source

function _wp_check_existing_file_names( $filename, $files ) {
	$fname = pathinfo( $filename, PATHINFO_FILENAME );
	$ext   = pathinfo( $filename, PATHINFO_EXTENSION );

	// Edge case, file names like `.ext`.
	if ( empty( $fname ) ) {
		return false;
	}

	if ( $ext ) {
		$ext = ".$ext";
	}

	$regex = '/^' . preg_quote( $fname ) . '-(?:\d+x\d+|scaled|rotated)' . preg_quote( $ext ) . '$/i';

	foreach ( $files as $file ) {
		if ( preg_match( $regex, $file ) ) {
			return true;
		}
	}

	return false;
}