How can PHP be used to emulate cookie behavior on a different domain using cURL?

When using cURL in PHP to make requests to a different domain, cookies are not automatically shared between the two domains. To emulate cookie behavior on a different domain, you can manually extract the cookies from the response headers and include them in subsequent requests using cURL.

<?php
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'http://example.com/login.php');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$response = curl_exec($ch);

preg_match_all('/^Set-Cookie:\s*([^;]*)/mi', $response, $matches);
$cookies = [];
foreach ($matches[1] as $match) {
    parse_str($match, $cookie);
    $cookies = array_merge($cookies, $cookie);
}

curl_setopt($ch, CURLOPT_URL, 'http://example.com/profile.php');
curl_setopt($ch, CURLOPT_COOKIE, http_build_query($cookies, '', ';'));

$response = curl_exec($ch);

curl_close($ch);

echo $response;
?>