php qq对话,用php聊QQ_PHP

代码:

'1.1',

private $ret;

public function go(){

$this->postValues = substr( $this->postValues, 0, -1 );

$request = "POST HTTP/1.1\r\n";

$request .= "Host: $this->host\r\n";

$length = strlen( $this->postValues );

$request .= "Content-Type: application/x-www-form-urlencoded\r\n";

$request .= "Content-Length: $length\r\n";

$request .= "\r\n";

$request .= $this->postValues;

$socket = fsockopen( $this->server, $this->port, $errno, $errstr, $this->timeout );

fputs( $socket, $request );

$ret = '';

while ( !feof( $socket ) ) {

$ret .= fgets( $socket, 4096 );

}

fclose( $socket );

$this->setRetValues( $ret );

}

public function clearParams() {

$this->postValues = '';

return true;

}

public function addParams( $var , $value ) {

$this->postValues.= urlencode( $var ) . "=" . urlencode( $value ) . '&';

}

public function setTimeout( $timeout ) {

$this->timeout = $timeout;

return true;

}

public function setServer( $server ) {

$this->server = $server;

return true;

}

public function setHost( $host ) {

$this->host = $host;

return true;

}

public function setPort( $port ) {

$this->port = $port;

return true;

}

public function getRetValues() {

parse_str(iconv('UTF-8','GB2312',$this->ret),$arrValues);

return $arrValues;

//return $this->ret;

}

private function setRetValues( $ret ) {

$this->ret=$ret;

return ture;

}

}

?>

query->clearParams();

$this->query->addParams('VER','1.1');

$this->query->addParams('CMD','Login');

$this->query->addParams('SEQ',rand(1000,9000));

$this->query->addParams('UIN',$this->no);

$this->query->addParams('PS',$this->pass);

$this->query->addParams('M5','1');

$this->query->addParams('LC','9326B87B234E7235');

$this->query->go();

return $this->query->getRetValues();

}

public function getFriendList() {

// VER=1.1&CMD=List&SEQ=&UIN=&TN=160&UN=0

$this->query->clearParams();

$this->query->addParams('VER','1.1');

$this->query->addParams('CMD','List');

$this->query->addParams('SEQ',rand(1000,9000));

$this->query->addParams('UIN',$this->no);

$this->query->addParams('TN','160');

$this->query->addParams('UN','0');

//$this->query->addParams('LC','9326B87B234E7235');

$this->query->go();

return $this->query->getRetValues();

}

public function changeStat($st) {

$this->query->clearParams();

$this->query->addParams('VER','1.1');

$this->query->addParams('CMD','Change_Stat');

$this->query->addParams('SEQ',rand(1000,9000));

$this->query->addParams('UIN',$this->no);

$this->query->addParams('ST',$st);

$this->query->go();

return $this->query->getRetValues();

//VER=1.1&CMD=Change_Stat&SEQ=&UIN=&ST=

//ST为要改变的状态,10为上线,20为离线,30为忙碌。

}

public function getMsg() {

//VER=1.1&CMD=GetMsgEx&SEQ=&UIN=

$this->query->clearParams();

$this->query->addParams('VER','1.1');

$this->query->addParams('CMD','GetMsgEx');

$this->query->addParams('SEQ',rand(1000,9000));

$this->query->addParams('UIN',$this->no);

$this->query->go();

return $this->query->getRetValues();

}

public function getUserInfo($user_no) {

// VER=1.1&CMD=GetInfo&SEQ=&UIN=&LV=2&UN=

$this->query->clearParams();

$this->query->addParams('VER','1.1');

$this->query->addParams('CMD','GetInfo');

$this->query->addParams('SEQ',rand(1000,9000));

$this->query->addParams('UIN',$this->no);

$this->query->addParams('LV','2');

$this->query->addParams('UN',$user_no);

$this->query->go();

echo time().' '.(double)microtime(true).'

';

//echo $user_no.'ok';

//print_r( $this->query->getRetValues());

}

public function setQQInfo( $no , $pass ) {

$this->no = $no;

$this->pass = md5($pass);

return true;

}

public function setQuery($query) {

$this->query = $query;

return true;

}

}

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值