首頁 後端開發 php教程 一些常用的PHP函数(整理)

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

Jun 23, 2016 pm 01:55 PM
php 函數 常用 整理

/** * 邹颢 * zouhao619@gmail.com *//** * 获取当前毫秒 * @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”操作。如果要传送一个文件,需要一个@开头的文件名	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=&gt;$v){				if($first){					$url.='?';					$first=false;				}else{					$url.='&amp;';				}				$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=&gt;$v){		$keysvalue[$k] = $v[$keys];	}	if($type == 'asc'){		asort($keysvalue);	}else{		arsort($keysvalue);	}	reset($keysvalue);	foreach ($keysvalue as $k=&gt;$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', '] =&gt; ', $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 ); }}
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南 適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南 Dec 24, 2024 pm 04:42 PM

適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南

CakePHP 專案配置 CakePHP 專案配置 Sep 10, 2024 pm 05:25 PM

CakePHP 專案配置

CakePHP 日期和時間 CakePHP 日期和時間 Sep 10, 2024 pm 05:27 PM

CakePHP 日期和時間

CakePHP 檔案上傳 CakePHP 檔案上傳 Sep 10, 2024 pm 05:27 PM

CakePHP 檔案上傳

CakePHP 路由 CakePHP 路由 Sep 10, 2024 pm 05:25 PM

CakePHP 路由

討論 CakePHP 討論 CakePHP Sep 10, 2024 pm 05:28 PM

討論 CakePHP

如何設定 Visual Studio Code (VS Code) 進行 PHP 開發 如何設定 Visual Studio Code (VS Code) 進行 PHP 開發 Dec 20, 2024 am 11:31 AM

如何設定 Visual Studio Code (VS Code) 進行 PHP 開發

CakePHP 快速指南 CakePHP 快速指南 Sep 10, 2024 pm 05:27 PM

CakePHP 快速指南

See all articles