golang 小程序,golang顺序执行和并发执行对比

使用顺序和并发2种方式 正则表达式
并发就是快
package main


import "io/ioutil"

import "net/http"

import "fmt"

import "regexp"

import "time"


func testget(url string) string{

    resp, err := http.Get(url)

    if err != nil {

        fmt.Println(err)

    }

    body, err := ioutil.ReadAll(resp.Body)

    if err != nil {

        fmt.Println(err)

    }

return get_title(string(body))

}


func testget2(url string, chann chan string ){

    resp, err := http.Get(url)

    if err != nil {

        fmt.Println(err)

    }

    body, err := ioutil.ReadAll(resp.Body)

    if err != nil {

        fmt.Println(err)

    }

chann <- get_title(string(body))

}



func get_title(body string) string{

re := regexp.MustCompile("<title>(.*)</title>")

a := re.FindStringSubmatch(body)

if len(a) != 0{

return a[1]

}

return ""

}


func current_unixtimestamp() int32{

return int32(time.Now().Unix())

}


func main(){


urllist := [] string {"http://www.baidu.com","http://www.17173.com","http://www.hao123.com","http://www.126.com","http://www.oschina.net","http://www.simapple.com"}


single_start := current_unixtimestamp()

for _,v := range urllist {

fmt.Println(v)

baidubody := testget(v)

fmt.Println(baidubody)

}

single_end := current_unixtimestamp()

    fmt.Printf("use %d seconds\n***********************************\n", single_end-single_start)




chann := make(chan string, 300)

single_start = current_unixtimestamp()

for _,v := range urllist {

fmt.Println(v)

go testget2(v, chann)

go fmt.Println(<-chann)

}

single_end = current_unixtimestamp()

    fmt.Printf("use %d seconds", single_end-single_start)

}

PHP发送POST请求的三种方式

PHP发送POST请求的三种方式

class Request{

    public static function post($url, $post_data = '', $timeout = 5){

        $ch = curl_init();

        curl_setopt ($ch, CURLOPT_URL, $url);

        curl_setopt ($ch, CURLOPT_POST, 1);

        if($post_data != ''){

            curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);

        }

        curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 

        curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);

        curl_setopt($ch, CURLOPT_HEADER, false);

        $file_contents = curl_exec($ch);

        curl_close($ch);

        return $file_contents;

    }


    public static function post2($url, $data){

        

        $postdata = http_build_query(

            $data

        );

        

        $opts = array('http' =>

                      array(

                          'method'  => 'POST',

                          'header'  => 'Content-type: application/x-www-form-urlencoded',

                          'content' => $postdata

                      )

        );

        

        $context = stream_context_create($opts);


        $result = file_get_contents($url, false, $context);

        return $result;


    }


    public static function post3($host,$path,$query,$others=''){


        $post="POST $path HTTP/1.1\r\nHost: $host\r\n";

        $post.="Content-type: application/x-www-form-";

        $post.="urlencoded\r\n${others}";

        $post.="User-Agent: Mozilla 4.0\r\nContent-length: ";

        $post.=strlen($query)."\r\nConnection: close\r\n\r\n$query";

        $h=fsockopen($host,80);

        fwrite($h,$post);

        for($a=0,$r='';!$a;){

                $b=fread($h,8192);

                $r.=$b;

                $a=(($b=='')?1:0);

            }

        fclose($h);

        return $r;

    }
}

wordpress开发指南,使用wordpress作为开发框架,wordpress开发框架功能,wordpress对比主流开发框架

WordPress 是一款非常流行的CMS,包含有用户管理和访问控制.很多流行的网站都是建立在以WordPress为后台的基础之上  而及时的更新 优秀的社区 丰富的文档 以及很好的论坛支持,让WP继续向前快速发展.

页面