仓酷云

标题: PHP教程之利用 php 4 减速 web 传输 [打印本页]

作者: 再见西城    时间: 2015-2-4 00:15
标题: PHP教程之利用 php 4 减速 web 传输
第1步环境配置好了,你算了进了1小步了,那么第2步呢 就是调出第1个程序 一般都是用hello world,视频教程里面我都做了,hello worldweb   <?
/***************************************
** Title.........: PHP4 HTTP Compression Speeds up the Web
** Version.......: 1.10
** Author........: catoc <catoc@163.net>
** Filename......: gzdoc.php
** Last changed..: 25/08/2000
** Requirments...: PHP4 >= 4.0.1
**                 PHP was configured with --with-zlib[=DIR]
** Notes.........: Dynamic Content Acceleration compresses
**                 the data transmission data on the fly
**                 code by sun jin hu (catoc) <catoc@163.net>
**                 Most newer browsers since 1998/1999 have
**                 been equipped to support the HTTP 1.1
**                 standard known as "content-encoding."
**                 Essentially the browser indicates to the
**                 server that it can accept "content encoding"
**                 and if the server is capable it will then
**                 compress the data and transmit it. The
**                 browser decompresses it and then renders
**                 the page.
** Useage........:
**                 No space before the beginning of the first '<?' tag.
**                 ------------Start of file----------
**                 |<?
**                 | include('gzdoc.php');
**                 | print "Start output !!";
**                 |?>
**                 |<HTML>
**                 |... the page ...
**                 |</HTML>
**                 |<?
**                 | gzdocout();
**                 |?>
**                 -------------End of file-----------
***************************************/
ob_start();
ob_implicit_flush(0);
function GetHeader(){
    $headers = getallheaders();
    while (list($header, $value) = each($headers)) {
        $Message .= "$header: $value<br>\n";
    }
    return $Message;
}
function CheckCanGzip(){
    global $HTTP_ACCEPT_ENCODING, $PHP_SELF, $Wget, $REMOTE_ADDR, $S_UserName;
    if (connection_timeout() || connection_aborted()){
        return 0;
    }
    if ((strpos('catoc'.$HTTP_ACCEPT_ENCODING, 'gzip')) || $Wget == 'Y'){
        if (strpos('catoc'.$HTTP_ACCEPT_ENCODING, 'x-gzip')){
            $ENCODING = "x-gzip";
            $Error_Msg = str_replace('<br>','',GetHeader());
            $Error_Msg .= "Time: ".date("Y-m-d H:i:s")."\n";
            $Error_Msg .= "Remote-Address: ".$REMOTE_ADDR."\n";
            //mail('your@none.net', "User have x-gzip output in file $PHP_SELF!!!", $Error_Msg);
        }else{
            $ENCODING = "gzip";
        }
        return $ENCODING;
    }else{
        return 0;
    }
}
function GzDocOut(){
    global $PHP_SELF, $CatocGz, $REMOTE_ADDR, $S_UserName;
    $ENCODING = CheckCanGzip();
    if ($ENCODING){
        print "\n<!-- Use compress $ENCODING -->\n";
        $Contents = ob_get_contents();
        ob_end_clean();
        if ($CatocGz == 'Y'){
            print "Not compress lenth: ".strlen($Contents)."<BR>";
            print "Compressed lenth: ".strlen(gzcompress($Contents))."<BR>";
            exit;
        }else{
            header("Content-Encoding: $ENCODING");
        }
        print pack('cccccccc',0x1f,0x8b,0x08,0x00,0x00,0x00,0x00,0x00);
        $Size = strlen($Contents);
        $Crc = crc32($Contents);
        $Contents = gzcompress($Contents);
        $Contents = substr($Contents, 0, strlen($Contents) - 4);
        print $Contents;
        print pack('V',$Crc);
        print pack('V',$Size);
        exit;
    }else{
        ob_end_flush();
        $Error_Msg = str_replace('<br>','',GetHeader());
        $Error_Msg .= "Time: ".date("Y-m-d H:i:s")."\n";
        $Error_Msg .= "Remote-Address: ".$REMOTE_ADDR."\n";
        //mail('your@none.net', "User can not use gzip output in file $PHP_SELF!!!", $Error_Msg);
        exit;
    }
}
?>   学会了PHP,那么学其他的语言,肯定速成,反过来也一样,如果你之前学过其他的语言,那么学PHP肯定快。
作者: 若相依    时间: 2015-2-4 10:26
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
作者: 分手快乐    时间: 2015-2-9 22:06
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
作者: 透明    时间: 2015-2-10 03:49
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
作者: 精灵巫婆    时间: 2015-2-19 01:10
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
作者: 若天明    时间: 2015-3-2 11:46
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
作者: 金色的骷髅    时间: 2015-3-11 18:50
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
作者: 愤怒的大鸟    时间: 2015-3-12 07:55
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
作者: 深爱那片海    时间: 2015-3-17 00:47
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
作者: 飘灵儿    时间: 2015-3-23 09:24
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
作者: 莫相离    时间: 2015-4-3 10:22
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
作者: 变相怪杰    时间: 2015-4-3 22:26
这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。
作者: admin    时间: 2015-4-7 12:52
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
作者: 小女巫    时间: 2015-4-10 08:57
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
作者: 不帅    时间: 2015-4-21 05:10
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
作者: 活着的死人    时间: 2015-4-30 23:24
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
作者: 小魔女    时间: 2015-5-6 05:09
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
作者: 老尸    时间: 2015-6-4 15:39
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
作者: 谁可相欹    时间: 2015-7-7 07:09
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。




欢迎光临 仓酷云 (http://www.ckuyun.com/) Powered by Discuz! X3.2