搜索
首页php教程PHP源码一个简单的PHP的CURL类

我写了一个基于CURL的PHP5的类,功能比较简单,比较适合学习用。如果真要应用的话,那绝对推荐Snoopy 太强大了。虽然它不是在curl基础上的。

php代码

<?php
class my_curl {
     
    public function __construct() {
        ! extension_loaded ( &#39;curl&#39; ) && exit ( &#39;CURL扩展未加载,程序终止运行&#39; );
        header ( &#39;Content-Type: text/html; charset=utf-8&#39; );
    }
     
    public function go($url, $vars = &#39;&#39;) {
        $ch = curl_init ();
        $array [CURLOPT_URL] = $url;
        $array [CURLOPT_HEADER] = false;
        $array [CURLOPT_RETURNTRANSFER] = true;
        $array [CURLOPT_FOLLOWLOCATION] = true;
         
        if (! empty ( $vars )) {
            $postfields = $this->render_postfields ( $vars ); //生成urlcode的url
            $array [CURLOPT_POST] = true;
            $array [CURLOPT_POSTFIELDS] = $postfields;
        }
         
        //判断是否有cookie,有的话直接使用
        if ($_COOKIE [&#39;cookie_jar&#39;] || is_file ( $_COOKIE [&#39;cookie_jar&#39;] )) {
            $array [CURLOPT_COOKIEFILE] = $_COOKIE [&#39;cookie_jar&#39;]; //这里判断cookie
        } else {
            $cookie_jar = tempnam ( &#39;/tmp&#39;, &#39;cookie&#39; ); //产生一个cookie文件
            $array [CURLOPT_COOKIEJAR] = $cookie_jar; //写入cookie信息
            setcookie ( &#39;cookie_jar&#39;, $cookie_jar ); //保存cookie路径
        }
        curl_setopt_array ( $ch, $array ); //传入curl参数
        $content = curl_exec ( $ch ); //执行
        curl_close ( $ch );//关闭
        return $content; //返回
    }
     
    protected function render_postfields($vars) {
        foreach ( $vars as $key => $values ) {
            $postdata .= urlencode ( $key ) . "=" . urlencode ( $values ) . "&";
        }
        return $postdata;
    }
}
?>

使用方法

<?php
if($_POST[&#39;email&#39;]&&$_POST[&#39;password&#39;]){
    include &#39;curl_class.php&#39;;
$curl = new my_curl ();
$vars [&#39;email&#39;] = $_POST[&#39;email&#39;];
$vars [&#39;password&#39;] = $_POST[&#39;password&#39;];
//$vars [&#39;done&#39;] = &#39;/&#39;;
//$vars [&#39;submit&#39;] = &#39;登 录&#39;;
echo $curl->go ( &#39;http://www.renren.com/PLogin.do&#39;, $vars );
 
}else{
?>
<html>
    <form action="" class="login-form" id="loginForm" method="post">
        <input type="text" id="email" name="email"/>
        <input type="text" id="password" name="password"/>
        <input type="submit" tabindex="4" value="登录" class="input-submit" id="login">
    </form>
</html>
<?php }?>
声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前By尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
1 个月前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具