[Ô´´] PHP ¼æÈÝ Curl/Socket/Stream µÄ HTTP ²Ù×÷Àà
<?php
/************************************************************
* ÃèÊö£ºHTTP²Ù×÷Àà
* ×÷Õߣºheiyeluren
* ´´½¨£º2009/12/13 04:43
* Ð޸ģº2009/12/16 10:30 ʵÏÖ»ù±¾HTTP¸÷ÖÖ½Ó¿Ú²Ù×÷Ö§³Ö
*
************************************************************/
/**
* HTTP¹¦Äܹ¤³§·½·¨Àà
*
* µ÷ÓÃʾÀý´úÂ룺
try {
$http = Http::factory('http://www.baidu.com', Http::TYPE_SOCK );
echo $http->get();
$http = Http::factory('http://127.0.0.1/test/i.php', Http::TYPE_SOCK );
echo $http->post('', array('user'=>'ÎÒÃÇ', 'nick'=>'ASSADF@#!32812989+-239%ASDF'), '', array('aa'=>'bb', 'cc'=>'dd'));
} catch (Exception $e) {
echo $e->getMessage();
}
*/
class Http
{
/**
* @var ʹÓà CURL
*/
const TYPE_CURL = 1;
/**
* @var ʹÓà Socket
*/
const TYPE_SOCK = 2;
/**
* @var ʹÓà Stream
*/
const TYPE_STREAM = 3;
/**
* ±£Ö¤¶ÔÏó²»±»clone
*/
private function __clone() {}
/**
* ¹¹Ô캯Êý
*/
private function __construct() {}
/**
* HTTP¹¤³§²Ù×÷·½·¨
*
* @param string $url ÐèÒª·ÃÎʵÄURL
* @param int $type ÐèҪʹÓõÄHTTPÀà
* @return object
*/
public static function factory($url = '', $type = self::TYPE_SOCK){
if ($type == ''){
$type = self::TYPE_SOCK;
}
switch($type) {
case self::TYPE_CURL :
if (!function_exists('curl_init')){
throw new Exception(__CLASS__ . " PHP CURL extension not install");
}
$obj = Http_Curl::getInstance($url);
break;
case self::TYPE_SOCK :
if (!function_exists('fsockopen')){
throw new Exception(__CLASS__ . " PHP function fsockopen() not support");
}
$obj = Http_Sock::getInstance($url);
break;
case self::TYPE_STREAM :
if (!function_exists('stream_context_create')){
throw new Exception(__CLASS__ . " PHP Stream extension not install");
}
$obj = Http_Stream::getInstance($url);
break;
default:
throw new Exception("http acc
Ïà¹ØÎĵµ£º
<?php
//н¨Ä¿Â¼
mkdir("/path/to/my/dir", 0700); //0700±íʾȨÏÞ×î´ó
//ɾ³ýĿ¼
rmdir("/path/to/my/dir");
//±éÀúĿ¼
$p =dir(/etc/php5);
echo "handler:".$p->handler;
while(false!=$entry=$p->read()){
echo $entry."\n" ;
}
$p->close();
//Êä³öÎļþÄÚÈÝ
$handle=@ ......
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> TEST </title>
<meta name="generator" content="editplus" />
......
2009-10-22 09:16
|
322´ÎÔĶÁ
|
¡¾ÒÑÓÐ0
ÌõÆÀÂÛ¡¿·¢±íÆÀÂÛ
¹Ø¼ü´Ê£ºPHP
| ¸Ðлyvonne_826
µÄÌṩ
|
ÊÕ²ØÕâƪÐÂÎÅ
ÈÕÇ°£¬PHPÓïÑÔ¼°¹¤¾ß¹©Ó¦ÉÌZend
TechnologiesÐû²¼½«ÁªÊÖÔƼÆËãÓ¦ÓùÜÀíÁì¾üÆóÒµRightScale£¬°ïÖúPHP¿ª·¢Õß½øÈëÔƼÆËãµÄÓ¦Óá£RightScale½« ......
Submitted by gouki
on 2008, December 28, 9:00 PM. PHP
ÎÄÕµÄÄÚÈÝдµÄ²»´í£¬ËùÒÔתÔØһϡ£
ÔÎÄ£ºhttp://xinsync.xju.edu.cn/index.php/archives/2946
ÄÚÈÝÈçÏ£º
XML/HTML´úÂë
¹ýÈ¥µ±ÔËÐÐÒ»¸ö´óµÄwebÓ¦ÓÃʱºòÒâζ×ÅÔËÐÐÒ»¸ö´óÐ͵Äweb·þÎñÆ÷¡£ÒòΪÄãµÄÓ¦ÓÃÎüÒýÁË´óÁ¿µÄÓû§£¬Ä㽫²»µÃ²»ÔÚÄãµÄ·þÎñÆ÷ÀïÔ ......
ÕâÊÇһЩʹÓÃƵÂʱȽϸߵĺ¯Êý£¬ÓеÄÀ´×Ô±ðÈ˵ijÌÐò......
1.²úÉúËæ»ú×Ö·û´®º¯Êý
function random($length) {
$hash = '';
$chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';
$max = strlen($chars) - 1;
mt_srand((double)microtime() * 1000000);
for($ ......