/**
* Verifies if passed URL (remote file or any webpage / webresource) exists
* The check is implemented via method HEAD, so no data is downloaded anyway
*
* @param <string> Remote URL to verify
* @returns <bool> Returns true if given URL exists, false otherwise
*/
function file_exists_remote (string $url) : bool
{
$handle = curl_init();
curl_setopt_array($handle, [
CURLOPT_URL => $url,
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_NOBODY => 1,
CURLOPT_HEADER => 0,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_FOLLOWLOCATION => 1,
CURLOPT_AUTOREFERER => 1
]);
curl_exec($handle);
$responseCode = (int) curl_getinfo($handle, CURLINFO_RESPONSE_CODE);
curl_close($handle);
return $responseCode === 200;
}