在HEAD中设置cookie

时间:2013-07-10 08:46:39

标签: php head

我已经构建了一个PHP插件,可以在网站加载时创建两个cookie(如果cookie不存在)。

Cookie的性质是存储在网站内使用的网页宽度和密度,这就是为什么必须在加载网站内容之前创建它们。

问题是我看到网站加载有相当大的延迟,因为cookie的创建阻止了网站加载......

任何人都可以看到有人优化我的功能以加快这个过程吗?或任何其他想法?

public function cookie()
    {
        if(!isset($_COOKIE['screenwidth'])) 
        {
            return "<script>
                        document.cookie='screenwidth='+document.documentElement.clientWidth+'; path=/';location.reload(true);
                    </script>";
        }

        if(!isset($_COOKIE['retina'])) 
        {
            return "<script>
                        var mediaQuery = '(-webkit-min-device-pixel-ratio: 1.5),\
                                          (min--moz-device-pixel-ratio: 1.5),\
                                          (-o-min-device-pixel-ratio: 3/2),\
                                          (min-resolution: 1.5dppx)';

                        if (window.devicePixelRatio > 1 || window.matchMedia && window.matchMedia(mediaQuery).matches) {
                            document.cookie='retina=yes; path=/';location.reload(true);
                        } else {
                            document.cookie='retina=no; path=/';location.reload(true);
                        }
                    </script>";
        }
    }

0 个答案:

没有答案