What are the best practices for handling server restrictions related to User-Agent identification in PHP scripts?

When encountering server restrictions related to User-Agent identification in PHP scripts, it is best to set a custom User-Agent header to mimic a legitimate browser or client. This can help bypass any restrictions imposed by the server.

<?php
$url = 'https://example.com/api';
$userAgent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3';
$headers = array('User-Agent: ' . $userAgent);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);

if($response === false){
    echo 'Error: ' . curl_error($ch);
} else {
    echo $response;
}

curl_close($ch);
?>