<script>
var jsvar = <?php echo json_encode($PHPVar); ?>;
</script>
json_encode () требует:
$PHPVar
кодируется как UTF-8, Unicode. Вы не можете прочитать значение cookie до тех пор, пока не будет сделан новый запрос на страницу. Это связано с тем, что значение данных cookie отправляется с запросом страницы. Таким образом, он недоступен для доступа к его значению до тех пор, пока он не будет установлен, и не будет сделан новый запрос страницы.
Хотя я вообще согласен с Джоном здесь, я хочу добавить: ваш скрипт получает cookie из специального заголовка в запросе, отправленном браузером клиента. Учитывая, что браузер не знал будущих куки, когда он отправлял первый запрос на страницу, он не мог предоставить их.