Server : nginx/1.22.1
System : Linux iZwz9daxib3w3i063fw434Z 3.10.0-1127.19.1.el7.x86_64 #1 SMP Tue Aug 25 17:23:54 UTC 2020 x86_64
User : www ( 1000)
PHP Version : 5.6.40
Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Directory :  /www/wwwroot/www.jkmold.com/phpsso_server/api/uc_client_1_5/model/
Upload File :
Current Directory [ Writeable ] Root Directory [ Writeable ]


Current File : /www/wwwroot/www.jkmold.com/phpsso_server/api/uc_client_1_5/model/misc.php
<?php



/*

	[UCenter] (C)2001-2009 Comsenz Inc.

	This is NOT a freeware, use is subject to license terms



	$Id: misc.php 846 2008-12-08 05:37:05Z zhaoxiongfei $

*/



!defined('IN_UC') && exit('Access Denied');



define('UC_ARRAY_SEP_1', 'UC_ARRAY_SEP_1');

define('UC_ARRAY_SEP_2', 'UC_ARRAY_SEP_2');



class miscmodel {



	var $db;

	var $base;



	function __construct(&$base) {

		$this->miscmodel($base);

	}



	function miscmodel(&$base) {

		$this->base = $base;

		$this->db = $base->db;

	}



	function get_apps($col = '*', $where = '') {

		$arr = $this->db->fetch_all("SELECT $col FROM ".UC_DBTABLEPRE."applications".($where ? ' WHERE '.$where : ''));

		return $arr;

	}



	function delete_apps($appids) {

	}



	function update_app($appid, $name, $url, $authkey, $charset, $dbcharset) {

	}



	//private

	function alter_app_table($appid, $operation = 'ADD') {

	}



	function get_host_by_url($url) {

	}



	function check_url($url) {

	}



	function check_ip($url) {

	}



	function test_api($url, $ip = '') {

	}



	function dfopen2($url, $limit = 0, $post = '', $cookie = '', $bysocket = FALSE, $ip = '', $timeout = 15, $block = TRUE, $encodetype  = 'URLENCODE') {

		$__times__ = isset($_GET['__times__']) ? intval($_GET['__times__']) + 1 : 1;

		if($__times__ > 2) {

			return '';

		}

		$url .= (strpos($url, '?') === FALSE ? '?' : '&')."__times__=$__times__";

		return $this->dfopen($url, $limit, $post, $cookie, $bysocket, $ip, $timeout, $block, $encodetype);

	}



	function dfopen($url, $limit = 0, $post = '', $cookie = '', $bysocket = FALSE	, $ip = '', $timeout = 15, $block = TRUE, $encodetype  = 'URLENCODE') {

		//error_log("[uc_client]\r\nurl: $url\r\npost: $post\r\n\r\n", 3, 'c:/log/php_fopen.txt');

		$return = '';

		$matches = parse_url($url);

		$host = $matches['host'];

		$path = $matches['path'] ? $matches['path'].($matches['query'] ? '?'.$matches['query'] : '') : '/';

		$port = !empty($matches['port']) ? $matches['port'] : 80;



		if($post) {

			$out = "POST $path HTTP/1.0\r\n";

			$out .= "Accept: */*\r\n";

			//$out .= "Referer: $boardurl\r\n";

			$out .= "Accept-Language: zh-cn\r\n";

			$boundary = $encodetype == 'URLENCODE' ? '' : ';'.substr($post, 0, trim(strpos($post, "\n")));

			$out .= $encodetype == 'URLENCODE' ? "Content-Type: application/x-www-form-urlencoded\r\n" : "Content-Type: multipart/form-data$boundary\r\n";

			$out .= "User-Agent: $_SERVER[HTTP_USER_AGENT]\r\n";

			$out .= "Host: $host\r\n";

			$out .= 'Content-Length: '.strlen($post)."\r\n";

			$out .= "Connection: Close\r\n";

			$out .= "Cache-Control: no-cache\r\n";

			$out .= "Cookie: $cookie\r\n\r\n";

			$out .= $post;

		} else {

			$out = "GET $path HTTP/1.0\r\n";

			$out .= "Accept: */*\r\n";

			//$out .= "Referer: $boardurl\r\n";

			$out .= "Accept-Language: zh-cn\r\n";

			$out .= "User-Agent: $_SERVER[HTTP_USER_AGENT]\r\n";

			$out .= "Host: $host\r\n";

			$out .= "Connection: Close\r\n";

			$out .= "Cookie: $cookie\r\n\r\n";

		}

		$fp = @fsockopen(($ip ? $ip : $host), $port, $errno, $errstr, $timeout);

		if(!$fp) {

			return '';

		} else {

			stream_set_blocking($fp, $block);

			stream_set_timeout($fp, $timeout);

			@fwrite($fp, $out);

			$status = stream_get_meta_data($fp);

			if(!$status['timed_out']) {

				while (!feof($fp)) {

					if(($header = @fgets($fp)) && ($header == "\r\n" ||  $header == "\n")) {

						break;

					}

				}



				$stop = false;

				while(!feof($fp) && !$stop) {

					$data = fread($fp, ($limit == 0 || $limit > 8192 ? 8192 : $limit));

					$return .= $data;

					if($limit) {

						$limit -= strlen($data);

						$stop = $limit <= 0;

					}

				}

			}

			@fclose($fp);

			return $return;

		}

	}



	function array2string($arr) {

		$s = $sep = '';

		if($arr && is_array($arr)) {

			foreach($arr as $k => $v) {

				$s .= $sep.$k.UC_ARRAY_SEP_1.$v;

				$sep = UC_ARRAY_SEP_2;

			}

		}

		return $s;

	}



	function string2array($s) {

		$arr = explode(UC_ARRAY_SEP_2, $s);

		$arr2 = array();

		foreach($arr as $k => $v) {

			list($key, $val) = explode(UC_ARRAY_SEP_1, $v);

			$arr2[$key] = $val;

		}

		return $arr2;

	}

}



?>