_wp_check_existing_file_names

The timeline below displays how wordpress function _wp_check_existing_file_names has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 5.5

/**
 * Helper function to check if a file name could match an existing image sub-size file name.
 *
 * @since 5.3.1
 * @access private
 *
 * @param string $filename The file name to check.
 * @param array  $files    An array of existing files in the directory.
 * @return bool True if the tested file name could match an existing file, false otherwise.
 */
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;
}

WordPress Version: 5.4

/**
 * Helper function to check if a file name could match an existing image sub-size file name.
 *
 * @since 5.3.1
 * @access private
 *
 * @param string $filename The file name to check.
 * $param array  $files    An array of existing files in the directory.
 * $return bool True if the tested file name could match an existing file, false otherwise.
 */
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;
}

WordPress Version: .10

/**
 * Helper function to check if a file name could match an existing image sub-size file name.
 *
 * @since 5.3.1
 * @access private
 *
 * @param string $filename The file name to check.
 * $param array  $files    An array of existing files in the directory.
 * $return bool True if the tested file name could match an existing file, false otherwise.
 */
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;
}

WordPress Version: 3.1

/**
 * Helper function to check if a file name could match an existing image sub-size file name.
 *
 * @since 5.3.1
 * @access private
 *
 * @param string $filename The file name to check.
 * $param array  $files    An array of existing files in the directory.
 * $return bool True if the tested file name could match an existing file, false otherwise.
 */
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) . '$/';
    foreach ($files as $file) {
        if (preg_match($regex, $file)) {
            return true;
        }
    }
    return false;
}