| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394 | 
							- <?php
 
- /* Desc : 修改 common.php 为Class版本,方便使用
 
-  * 
 
-  * Para :
 
-  *  	
 
-  * Author:
 
-  * 
 
- **/
 
- class commonFunc{
 
- 	/*
 
- 	 * curl 调用
 
- 	 */
 
- 	//echo post_request("http://www.baidu.com");
 
- 	public static function post_request($url, $params=array()) {
 
- 		
 
- 		$ch = curl_init();
 
- 		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
 
- 		curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/x-www-form-urlencoded"));
 
- 		//curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/html"));
 
- 		curl_setopt($ch, CURLOPT_URL, $url);
 
- 		curl_setopt($ch, CURLOPT_POST, true);
 
- 		curl_setopt($ch, CURLOPT_TIMEOUT, 3);
 
- 		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  
 
- 		curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));  
 
- 		$result = curl_exec($ch);
 
- 	    $httpinfo= curl_getinfo($ch);
 
- 		curl_close($ch);
 
- 		//print_r($httpinfo);
 
- 		$info = "{$httpinfo['http_code']}|$url|$result";
 
- 		Log::save_run_log($info,'curl');
 
- 		if($httpinfo['http_code'] == 200){
 
- 			return $result;
 
- 		} else {
 
- 			return false;
 
- 		}
 
- 	}
 
- 	
 
- 	public static function makeRequest($url, $params,$timeout=3,$post=true) {
 
- 	    $ch = curl_init();
 
- 	    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
 
- 	    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/x-www-form-urlencoded"));
 
- 	    curl_setopt($ch, CURLOPT_URL, $url);
 
- 	    curl_setopt($ch, CURLOPT_POST, $post);
 
- 	    curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
 
- 		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  
 
- 		curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
 
- 		curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));  
 
- 	    $result = curl_exec($ch);
 
- 	    curl_close($ch);
 
- 	    return $result;
 
- 	}
 
- 	
 
- 	
 
- 	public static function get_request_https($url){
 
- 		$ch = curl_init();  
 
- 		curl_setopt($ch, CURLOPT_URL,$url);  
 
- 		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);  
 
- 		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);  
 
- 		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  
 
- 		curl_setopt($ch, CURLOPT_TIMEOUT, 15);
 
- 		if(TEST) curl_setopt($ch, CURLOPT_PROXY, '127.0.0.1:8086');
 
- 		$result = curl_exec($ch); 
 
- 		  $httpinfo = curl_getinfo($ch);
 
- 		  
 
- 		$info = "{$httpinfo['http_code']}|$url|$result";
 
- 		Log::save_run_log($info,'curlhttps');
 
- 		
 
- 		curl_close($ch);
 
- 		if($httpinfo['http_code'] == 200){
 
- 		return $result;
 
- 		} else {
 
- 		return false;
 
- 		}
 
- } 
 
- 	
 
- 	public static function xml_unserialize(&$xml, $isnormal = FALSE) {
 
- 		$xml_parser = new XML($isnormal);
 
- 		$data = $xml_parser->parse($xml);
 
- 		$xml_parser->destruct();
 
- 		return $data;
 
- 	}
 
- 	
 
- 	/**
 
- 	*	获得请求端的xml
 
- 	*/
 
- 	
 
- 	public static function post_request_xml($url, $params=array()) {
 
- 		
 
- 		$ch = curl_init();
 
- 		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
 
- 		//curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/x-www-form-urlencoded"));
 
- 		curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/html"));
 
- 		curl_setopt($ch, CURLOPT_URL, $url);
 
- 		curl_setopt($ch, CURLOPT_POST, true);
 
- 		curl_setopt($ch, CURLOPT_TIMEOUT, 3);
 
- 		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  
 
- 		curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
 
- 		  
 
- 		$result = file_get_contents('php://input');
 
- 		
 
- 	    $httpinfo= curl_getinfo($ch);
 
- 		curl_close($ch);
 
- 		//print_r($httpinfo);
 
- 		$info = "{$httpinfo['http_code']}|$url|$result";
 
- 		Log::save_run_log($info,'curl');
 
- 		if($httpinfo['http_code'] == 200){
 
- 			return $result;
 
- 		} else {
 
- 			return false;
 
- 		}
 
- 	}
 
- 	/**
 
- 	*	获得请求端的ip地址
 
- 	*/
 
- 	public static function  get_client_ip() {
 
- 		global  $_SERVER;
 
- 		if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])) {
 
- 			$ip  =  $_SERVER["HTTP_X_FORWARDED_FOR"];
 
- 		} elseif (isset($_SERVER["HTTP_CLIENT_IP"])) {
 
- 			$ip  =  $_SERVER["HTTP_CLIENT_IP"];
 
- 		} else {
 
- 			$ip  =  $_SERVER["REMOTE_ADDR"];
 
- 		}
 
- 		return  $ip;
 
- 	}
 
- 	
 
- 	/**
 
- 	*	接口999操作失败
 
- 	*  forexample: response_999(__FILE__,__LINE__,__FUNCTION__,"SQL");
 
- 	*/
 
- 	public static function response_999($file,$line,$function,$err_type){
 
- 		$parameters = get_parameters();
 
- 		$file = strstr($file,"u.");
 
- 		$log = "|response:999|file:$file|line:$line|function:$function|err_type:$err_type|$parameters";
 
- 		Log::save_run_log($log,"run");
 
- 		echo "-999";
 
- 		exit;
 
- 	}
 
- 	/**
 
- 	*	接口返回结果函数
 
- 	*/
 
- 	public static function response($result){
 
- 		echo $result;
 
- 		exit;
 
- 	}
 
- 	
 
- 	/**
 
- 	 * 取得精确时间值
 
- 	 */
 
- 	public static function microtime_float(){
 
-    		list($usec, $sec) = explode(" ", microtime());
 
-     	return ((float)$usec + (float)$sec);
 
- 	}
 
- 	
 
- 	
 
- 	/**
 
- 	*	取得请求参数,并组成字符串
 
- 	*	格式为 {parameter:value|parameter:value|parameter:value|parameter:value……………………}
 
- 	*/
 
- 	public static function get_parameters() {
 
- 		global $_GET,$_POST;
 
- 		$parameters = "";
 
- 		if($_GET){
 
- 			foreach($_GET as $key => $val){
 
- 				if($key == 'sign') 
 
- 					continue;
 
- 				else
 
- 					$parameters .= "$key:$val|";
 
- 			}
 
- 		}
 
- 		if($_POST){
 
- 			foreach($_POST as $key => $val){
 
- 				if($key == 'sign') 
 
- 					continue;
 
- 				else
 
- 					$parameters .= "$key:$val|";
 
- 			}
 
- 		}
 
- 		if(strlen($parameters) > 1 )
 
- 			$parameters = substr($parameters,0,-1);
 
- 		return "{".$parameters."}";
 
- 	}
 
- 	
 
- 	public static function get_browser_language()	{
 
- 		if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])){
 
- 			$accept_lang = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']);
 
- 			return $accept_lang[0];
 
- 		} else {
 
- 			return false;
 
- 		}
 
- 	}
 
- 	
 
- 	
 
- 	public static function filterInput(&$info){
 
- 		if(empty($info)) return false;
 
- 		if(is_array($info)){
 
- 			foreach ($info as $key=>$val){
 
- 				$info[$key] = addslashes($val);
 
- 			}
 
- 		} else {
 
- 			$info = addslashes($info);
 
- 		}
 
- 	}
 
- 	
 
- 	public static function matchSex($total_friend,$sex,$friends){
 
- 		$ran = rand(0,$total_friend-1);
 
- 		
 
- 		if($sex == 2) return $ran;
 
- 		if ($sex == 1 and $friends[$ran]['sex']=='male'){
 
- 			return $ran;
 
- 		} else if ($sex == 0 and $friends[$ran]['sex']=='female'){
 
- 			return $ran;
 
- 		} else {
 
- 			$ran =  matchSex($total_friend,$sex,$friends);
 
- 		}
 
- 	}
 
- 	
 
- 	public static function get_GetParameters() {
 
- 		global $_GET;
 
- 		$parameters = "";
 
- 		if($_GET){
 
- 			foreach($_GET as $key => $val){
 
- 				$parameters .= "$key:$val|";
 
- 			}
 
- 		}
 
- 		if(strlen($parameters) > 1 )
 
- 			$parameters = substr($parameters,0,-1);
 
- 		return $parameters;
 
- 	}
 
- 	
 
- 	public static function getRandomStr( $length = 8 )
 
- 	{
 
- 	    // character dictionary
 
- 	    $chars = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 
 
- 	    'i', 'j', 'k', 'l','m', 'n', 'o', 'p', 'q', 'r', 's', 
 
- 	    't', 'u', 'v', 'w', 'x', 'y','z', 'A', 'B', 'C', 'D', 
 
- 	    'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L','M', 'N', 'O', 
 
- 	    'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y','Z', 
 
- 	    '0', '1', '2', '3', '4', '5', '6', '7', '8', '9');
 
- 	
 
- 	    // get keys
 
- 		$max = count($chars)-1;
 
- 		for ($i = 0; $i < $length; $i++){
 
- 			$keys[] = mt_rand(0,$max);	
 
- 		}
 
- 	    
 
- 	    $password = '';
 
- 	    for($i = 0; $i < $length; $i++)
 
- 	    {
 
- 	        $password .= $chars[$keys[$i]];
 
- 	    }
 
- 	   
 
- 	    return $password;
 
- 	}
 
- 	
 
- 	public static function getRandomNum( $length = 6 )
 
- 	{
 
- 	    // character dictionary
 
- 	    $chars = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9');
 
- 	
 
- 	    // get keys
 
- 		$max = count($chars)-1;
 
- 		for ($i = 0; $i < $length; $i++){
 
- 			$keys[] = mt_rand(0,$max);	
 
- 		}
 
- 	    
 
- 	    $password = '';
 
- 	    for($i = 0; $i < $length; $i++)
 
- 	    {
 
- 	        $password .= $chars[$keys[$i]];
 
- 	    }
 
- 	   
 
- 	    return $password;
 
- 	}
 
- 	
 
- 	public static function getUrlHost($url){
 
- 		
 
- 		$host_end_pos = strpos($url,'/',7);
 
- 		if(!empty($host_end_pos)){
 
- 			$hostUrl = substr($url,0,$host_end_pos);
 
- 		}
 
- 		else{
 
- 			$hostUrl = $url;
 
- 		}
 
- 		return $hostUrl;
 
- 	}
 
- 	
 
- 	public static function handlePageRefer($logFile_pre){
 
- 		// Save refer log
 
- 		$refer = $_SERVER['HTTP_REFERER'];
 
- 		if(!empty($refer) && strpos($refer,'oasgames.com') === FALSE){
 
- 			$refer = commonFunc::getUrlHost($refer);
 
- 			Log::save_run_log($refer,$logFile_pre);
 
- 			// set cookie 
 
- 			setcookie("oas_lp_refer",$refer,0,'/','.oasgames.com');
 
- 		}
 
- 	}
 
- 	
 
- 	public static function sqlInjectCheck($input){
 
- 		
 
- //		$sqlKeyWords = array(
 
- //			'select','insert','update',
 
- //			'delete','drop','create',
 
- //			'truncate','database',
 
- //			'table','column','add',
 
- //			'load_file','grant','privileges',
 
- //			' ',
 
- //		);
 
- //		
 
- //		$input = strtolower($input);
 
- //		
 
- //		foreach ($sqlKeyWords as $kw){
 
- //			if(strpos($input, $kw) !== FALSE){
 
- //				return true;
 
- //			}
 
- //		}
 
- 		return false;
 
- 	}
 
- 	
 
- 	// Desc: Method to make request at server side
 
- 	// Para: 
 
- 	// @$default_ip can be set with the ip of the url host
 
- 	//    
 
- 	// Implemented by Huchunmei at 2013.2.27
 
- 	public static function curlMakeRequest($url, $params,$timeout=3,$isPostMethod=true,$default_ip='') {
 
- 		$curl   = curl_init();
 
- 		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
 
- 		curl_setopt($curl, CURLOPT_HTTPHEADER, array("Content-Type: application/x-www-form-urlencoded"));	
 
- 		curl_setopt($curl, CURLOPT_URL, $url);
 
- 		curl_setopt($curl, CURLOPT_HTTPPROXYTUNNEL, 0);
 
- 		curl_setopt($curl, CURLOPT_POST, $isPostMethod);
 
- 		curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);
 
- 		curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
 
- 		curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($params));  
 
- 		curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
 
- 		
 
- 		if(!empty($default_ip)) 
 
- 			curl_setopt($curl, CURLOPT_PROXY,$default_ip);
 
- 		
 
- 		$output   = curl_exec($curl);
 
- 		$httpinfo = curl_getinfo($curl);			
 
- 		curl_close($curl);
 
- 		if($httpinfo['http_code'] == 200){
 
- 			return $output;
 
- 		} else {
 
- 			return false;
 
- 		}
 
- 	}
 
- 	public static function curlRequest($url,$postData='',$timeout=3){
 
- 		
 
- 		$curl = curl_init(); 
 
- 		curl_setopt($curl, CURLOPT_URL, $url); 
 
- 		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); 
 
- 		curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1); 
 
- 		curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); 
 
- 		curl_setopt($curl, CURLOPT_AUTOREFERER, 1); 
 
- 		
 
- 		if(!empty($postData)){
 
- 			curl_setopt($curl, CURLOPT_POST, 1); 
 
- 			curl_setopt($curl, CURLOPT_POSTFIELDS, $postData); 
 
- 		}
 
- 		curl_setopt($curl, CURLOPT_TIMEOUT, $timeout); 
 
- 		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
 
- 		
 
- 		$resultData = curl_exec($curl);
 
- 		$httpInfo   = curl_getinfo($curl);
 
- 		
 
- 		if (curl_errno($curl)) {
 
- 			curl_close($curl);
 
- 			return false;
 
- 		}else{
 
- 			curl_close($curl);
 
- 			return $resultData;
 
- 		}
 
- 		
 
- 	}	
 
- 	
 
- // Class end
 
- }
 
- ?>
 
 
  |