504错误如何修复此选择计数错误

I have a 504 gateway timeout error in my php script, how can I split this script or what can I do to fix this error

$mp3FilesOnServer = getDirContents($uploadsDir);

$newMp3FilesOnServer = array();

foreach ($mp3FilesOnServer as $fileFullPath) {
    $fileName = preg_replace('#^.*?([\/\\\\]+wp-content.*)$#', '$1', $fileFullPath);
    $fileName = str_replace('\\', '/', $fileName);
    $query = $wpdb->prepare('SELECT COUNT(*) FROM ' . $wpdb->postmeta . ' 
        LEFT JOIN ' . $wpdb->posts . ' ON ' . $wpdb->posts . '.ID = ' . $wpdb->postmeta . '.post_id  
        WHERE meta_key = "mp3file_name" AND meta_value LIKE %s AND ' . $wpdb->posts . '.post_status != "trash"', $fileName);
    $isDb = (int) $wpdb->get_var($query);

    if (!$isDb)
        $newMp3FilesOnServer[] = array(
            'fullPath' => $fileFullPath,
            'name' => $fileName
        );
}