Home  >  Article  >  Backend Development  >  一些惯用的PHP函数(整理)

一些惯用的PHP函数(整理)

WBOY
WBOYOriginal
2016-06-13 11:59:53789browse

一些常用的PHP函数(整理)

/** * 邹颢 * [email protected] *//** * 获取当前毫秒 * @return string */function get_millisecond() {	$t = explode ( " ", microtime () );	$t = $t [1] . ($t [0] * 1000);	$t2 = explode ( ".", $t );	return $t2 [0];}/** * curl模拟http/https post请求 * @param string $url			请求网址 * @param array $data			请求参数 * @return string				网址内容 */function curl_post($url,$data=array()){	$ch = curl_init($url);	curl_setopt($ch, CURLOPT_RETURNTRANSFER,true) ; // 获取数据返回	curl_setopt($ch, CURLOPT_POST,true) ; // 启用时会发送一个常规的POST请求,类型为:application/x-www-form-urlencoded,就像表单提交的一样。	curl_setopt($ch, CURLOPT_POSTFIELDS,$data); // 在HTTP中的“POST”操作。如果要传送一个文件,[email protected]	if(substr($url,0,5)=='https'){		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);	}	$content=curl_exec($ch);	curl_close($ch) ;	return $content;}/** * curl模拟http get请求 * @param string $url			请求网址 * @param string|array $data	请求参数 * @return string				网址内容 */function curl_get($url,$data=array()){	$url=rtrim($url,'/');	if(!empty($data)){		if(is_array($data)){			$first=true;			foreach($data as $k=>$v){				if($first){					$url.='?';					$first=false;				}else{					$url.='&';				}				$url.="{$k}={$v}";			}		}else{			$data=ltrim('?',$data);			$url.='?'.$data;		}	}	$ch = curl_init($url);	curl_setopt($ch,CURLOPT_HEADER,false);	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ; // 获取数据返回	if(substr($url,0,5)=='https'){		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);	}	$content = curl_exec($ch);	curl_close($ch);	return $content;}/** * 二维数组按键值排序 * @param array $arr 		二维数组 * @param string $keys		键值 * @param string $type		升序:asc,降序:desc(else) * @return array */function array_sort($arr,$keys,$type='asc'){	$keysvalue = $new_array = array();	foreach ($arr as $k=>$v){		$keysvalue[$k] = $v[$keys];	}	if($type == 'asc'){		asort($keysvalue);	}else{		arsort($keysvalue);	}	reset($keysvalue);	foreach ($keysvalue as $k=>$v){		$new_array[$k] = $arr[$k];	}	return $new_array;}/** * 获取客户端ip * @param number $type * @return string */function get_client_ip($type = 0) {	$type       =  $type ? 1 : 0;	static $ip  =   NULL;	if ($ip !== NULL) return $ip[$type];	if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {		$arr    =   explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);		$pos    =   array_search('unknown',$arr);		if(false !== $pos) unset($arr[$pos]);		$ip     =   trim($arr[0]);	}elseif (isset($_SERVER['HTTP_CLIENT_IP'])) {		$ip     =   $_SERVER['HTTP_CLIENT_IP'];	}elseif (isset($_SERVER['REMOTE_ADDR'])) {		$ip     =   $_SERVER['REMOTE_ADDR'];	}	// IP地址合法验证	$long = sprintf("%u",ip2long($ip));	$ip   = $long ? array($ip, $long) : array('0.0.0.0', 0);	return $ip[$type];}/** * 将字符串转换为驼峰式命名 *  * @param string $str        	 * @param boolean $big *        	true大驼峰式 false小驼峰式 * @return string */function hump_type($str, $big = false) {	$str = strtolower ( $str );	$big and ucfirst ( $str );	$str = preg_replace ( "/_([a-zA-Z])/e", "strtoupper('\\1')", $str );	return $str;}/** * 遍历删除文件夹 * * @param string $path *        	文件夹地址 * @return boolean */function delete_files($path) {	if (is_file ( $path )) {		return unlink ( $path );	}	if (is_dir ( $path )) {		$handle = opendir ( $path );		if ($handle != false) {			while ( false !== ($file = readdir ( $handle )) ) {				if (in_array ( $file, array (						'.',						'..' 				) ))					continue;				$file = $path . '/' . $file;				if (is_dir ( $file )) {					delete_files ( $file );				} else if (is_file ( $file )) {					if (unlink ( $file ) == false)						return false;				}			}			closedir ( $handle );		}		return true;	}}/** * 截取字符串(可截取utf8的) * * @param string $str        	 * @param int $start        	 * @param int $length        	 * @param string $trim        	 * @param string $charset        	 * @return string */function sub($str, $start, $length, $trim = "...", $charset = 'UTF-8') {	$length+=2;	if (function_exists ( 'mb_get_info' )) {		$iLength = mb_strlen ( $str, $charset );		$str = mb_substr ( $str, $start, $length, $charset );		if($length\n(\s+)/m', '] => ', $output );		$output = '<pre class="brush:php;toolbar:false">' . htmlspecialchars ( $output, ENT_QUOTES ) . '
'; } echo ($output);}/** * 从左边查询子串,找到则删除子串,只删除一次 * * @param string $str * @param string $find * @return string */function substr_left_once($str, $find) { $start = strpos ( $str, $find ); if (is_bool ( $start )) { return $str; } else { return substr ( $str, $start + strlen ( $find ), strlen ( $str ) ); }}/** * 从右边查询子串,找到则删除子串,只删除一次 * * @param string $str * @param string $find * @return string */function substr_right_once($str, $find) { $end = strrpos ( $str, $find ); if (is_bool ( $end )) { return $str; } else { return substr ( $str, 0, $end ); }}
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn