PHP模拟asp中response类实现方法
网络编程 2021-07-05 09:09www.168986.cn编程入门
这篇文章主要介绍了PHP模拟asp中response类的方法,可实现模拟ASP中response类处理客户端响应的功能,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了PHP模拟asp中response类的方法。分享给大家供大家参考。具体如下
习惯了asp或是asp.开发的人, 他们会经常用到response类,这个类用于处理客户端的响应,可以实现跳转,输出等功能. 在php中没有这个类,确实可以通过函数来模拟这个类.
/ 类用途: 实现类似于asp中的response功能 / final class Response { private $headers = array(); private $output; private $level = 0; public function addHeader($key, $value) { $this->headers[$key] = $value; } public function removeHeader($key) { if (isset($this->headers[$key])) { unset($this->headers[$key]); } } public function redirect($url) { header('Location: ' . $url); exit; } public function setOutput($output, $level = 0) { $this->output = $output; $this->level = $level; } private function press($data, $level = 0) { if (isset($_SERVER['HTTP_ACCEPT_ENCODING']) && (strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') !== FALSE)) { $encoding = 'gzip'; } if (isset($_SERVER['HTTP_ACCEPT_ENCODING']) && (strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'x-gzip') !== FALSE)) { $encoding = 'x-gzip'; } if (!isset($encoding)) { return $data; } if (!extension_loaded('zlib') || ini_get('zlib.output_pression')) { return $data; } if (headers_sent()) { return $data; } if (connection_status()) { return $data; } $this->addHeader('Content-Encoding', $encoding); return gzencode($data, (int)$level); } public function output() { if ($this->level) { $ouput = $this->press($this->output, $this->level); } else { $ouput = $this->output; } if (!headers_sent()) { foreach ($this->headers as $key => $value) { header($key . ': ' . $value); } } echo $ouput; } }
希望本文所述对大家的php程序设计有所帮助。
编程语言
- 宿迁百度关键词排名指南:实现精准营销的关键
- 四川SEO优化怎么做网络推广
- 立昂技术备案老域名收购:如何为您的业务赋能
- 安徽百度关键词seo贵不贵,一般需要多少钱
- 吉林百度快照排名怎么做电话营销
- 多伦新手做SEO怎么做
- 甘肃优化关键词排名推广怎么做论坛营销
- 沙雅SEO网站推广:提升您的在线可见性
- 四川SEO优化如何提升销售额和销售量
- 聂荣网站排名优化:提升网站可见性的全方位指
- 涞水SEO:提升地方企业在线可见性的策略
- 辽宁百度seo排名怎样做网站排名
- 临湘哪有关键词排名优化:提升网站可见度的关
- 黑龙江百度网站优化有没有优惠
- 凉城优化关键词排名推广:提升您的网络可见性
- 萝北整站优化:提升您网站流量和排名的全面指