亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

一文總結常用PHP業務邏輯demo

瀏覽:98日期:2022-06-14 08:24:06
目錄項目開發常用業務邏輯代碼1、加密解密函數:2、上傳圖片方向糾正:3、拆分姓名中的姓氏和名字4、打印輸出數據到文件5、隨機字符生成6、生成唯一訂單號7、獲取毫秒級時間戳。8、獲取文章中的圖片9、重寫PHP array_push實現自由添加數組鍵值10、修改XML文件節點11、uuid生成12、計算兩個日期中間相差多少年多少月多少天多少小時13、分鐘數轉時分15、隱藏字符串中間一部分,用*代替16、二維數組按指定鍵排序17、Base64圖片流轉圖片文件18、隨機昵稱19、去除文本中指定的HTML標簽20、人民幣金額友好顯示:多少萬、多少億21、二維數組去重項目開發常用業務邏輯代碼

項目開發中經常用到的業務邏輯代碼,總結在此處,備用。

1、加密解密函數:function?encryptDecrypt($key,?$string,?$decrypt){????if($decrypt){????????$decrypted?=?rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256,?md5($key),?base64_decode($string),?MCRYPT_MODE_CBC,?md5(md5($key))),?'12');????????return?$decrypted;????}else{????????$encrypted?=?base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256,?md5($key),?$string,?MCRYPT_MODE_CBC,?md5(md5($key))));????????return?$encrypted;????}}

在使用的時候我們可以為加密的字符串,設置一個加密KEY值,解密的時候傳入這個KEY值即可獲得密文原文。$decrypt取值0和1時分別對應加密、解密。

2、上傳圖片方向糾正:

由于每個人拍照姿勢都不一樣,難免有人拍照上傳的圖片出現倒立的情況,下面這個業務邏輯可以自動糾正上傳圖片的方向。

$image?=?imagecreatefromstring(file_get_contents($_FILES['image_upload']['tmp_name']));$exif?=?exif_read_data($_FILES['image_upload']['tmp_name']);if(!emptyempty($exif['Orientation']))?{????switch($exif['Orientation'])?{????????case?8:????????????$image?=?imagerotate($image,90,0);????????????break;????????case?3:????????????$image?=?imagerotate($image,180,0);????????????break;????????case?6:????????????$image?=?imagerotate($image,-90,0);????????????break;????}}3、拆分姓名中的姓氏和名字/**?*?拆分姓名(姓氏和名字)?*?@param?string?$fullname?全名(如:百里屠蘇)?*?@return?array?一維數組[0=>'姓氏',1=>'名稱']?*?@return?array?*/function?splitName($fullname){????$hyphenated?=?array(????????'百里','北堂','北野','北宮','辟閭',????????'淳于','成公','陳生','褚師','城池',????????'端木','東方','東郭','東野','東門','第五','大狐','段干','段陽','第二','東宮',????????'公孫','公冶','公羊','公良','公西','公孟','公伯','公析','公肩','公堅','公乘','公皙','公戶','公廣','公儀','公祖','公玉','公仲','公上','公門','公山','高堂','高陽','郭公','谷梁','毌將','毌丘','單于','叱干','叱利','車非',????????'獨孤','大野','獨吉','達奚','東里',????????'哥舒','貫丘',????????'皇甫','黃龍','胡母','何陽','赫連','呼延','賀蘭','賀若','黑齒','斛律','斛粟',????????'夾谷','九方','即墨','吉胡',????????'可頻',????????'梁丘','閭丘','洛陽','陵尹','冷富','龍丘','令狐',????????'慕容','萬俟','抹捻',????????'納蘭','南榮',????????'南宮','南郭','女媧','南伯','南容','南門','南野',????????'歐陽','歐侯',????????'濮陽','普周','仆固','仆散','蒲察',????????'青陽','漆雕','亓官','渠丘','屈突','屈盧','鉗耳',????????'壤駟','汝嫣',????????'上官','少室','少叔','司徒','司馬','司空','司寇','士孫','申屠','申徒','申鮮','申叔','夙沙','叔先','叔仲','叔孫','侍其','是云','索盧','厙狄',????????'澹臺','太史','太叔','太公','屠岸','唐古','拓跋','同蹄','禿發',????????'聞人','巫馬','微生','王孫','無庸','完顏',????????'夏侯','西門','信平','鮮于','軒轅','相里','新垣','徐離姓',????????'羊舌','羊角','延陵','於陵','伊祁','吾丘','樂正','宇文','尉遲','耶律',????????'諸葛','顓孫','仲孫','仲長','鐘離','宗政','主父','中叔','左人','左丘','宰父','長兒','仉督','長孫','子車','子書','子桑'????);????$vLength?=?mb_strlen($fullname,?'utf-8');????$lastname?=?'';????$firstname?=?'';//前為姓,后為名????if($vLength?>?2){????????$preTwoWords?=?mb_substr($fullname,?0,?2,?'utf-8');//取命名的前兩個字,看是否在復姓庫中????????if(in_array($preTwoWords,?$hyphenated)){????????????$lastname?=?$preTwoWords;????????????$firstname?=?mb_substr($fullname,?2,?10,?'utf-8');????????}else{????????????$lastname?=?mb_substr($fullname,?0,?1,?'utf-8');????????????$firstname?=?mb_substr($fullname,?1,?10,?'utf-8');????????}????}else?if($vLength?==?2){//全名只有兩個字時,以前一個為姓,后一下為名????????$lastname?=?mb_substr($fullname?,0,?1,?'utf-8');????????$firstname?=?mb_substr($fullname,?1,?10,?'utf-8');????}else{????????$lastname?=?$fullname;????}????return?array($lastname,?$firstname);}4、打印輸出數據到文件/**?*?打印輸出數據到文件?*?@param?mixed?$data?*?@param?bool?$replace?*?@param?string|null?$pathname?*/function?p($data,?$replace?=?false,?$pathname?=?null){????is_null($pathname)?&&?$pathname?=?RUNTIME_PATH?.?date('Ymd')?.?'.txt';????$str?=?(is_string($data)???$data?:?(is_array($data)?||?is_object($data))???print_r($data,?true)?:?var_export($data,?true))?.?'\n';????$replace???file_put_contents($pathname,?$str)?:?file_put_contents($pathname,?$str,?FILE_APPEND);}

這個函數雖然很小巧,但是在調試一些內部執行數據的時候非常有用,且很方便的輸出我們要查看的數據。

5、隨機字符生成/*?*?隨機字符生成?*/function?randStr($len=6,$format='all')?{????switch($format)?{????????case?'all':????????????$chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-@#~';?break;????????case?'char':????????????$chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-@#~';?break;????????case?'number':????????????$chars='0123456789';?break;????????case?'charnum':????????????$chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';????????????break;????????case?'verify':????????????$chars='ABCDEFGHIJKMNPQRSTUVWXYZ23456789';????????????break;????}????mt_srand();????$password='';????while(strlen($password)<$len)????????$password.=substr($chars,(mt_rand()%strlen($chars)),1);????return?$password;}6、生成唯一訂單號/*?*?生成唯一訂單號?*/function?CreateOrderId(){????$order_id_main?=?date('YmdHis')?.?rand(10000000,99999999);????//訂單號碼主體長度????$order_id_len?=?strlen($order_id_main);????$order_id_sum?=?0;????for($i=0;?$i<$order_id_len;?$i++){????????$order_id_sum?+=?(int)(substr($order_id_main,$i,1));????}????//唯一訂單號碼(YYYYMMDDHHIISSNNNNNNNNCC)????$order_id?=?$order_id_main?.?str_pad((100?-?$order_id_sum?%?100)?%?100,2,'0',STR_PAD_LEFT);????return?$order_id;}7、獲取毫秒級時間戳。

關于獲取毫秒級時間戳其實只需要一行代碼,網上很多人專門寫了很多函數去處理。因為毫秒級的時間戳是13位,int類會溢出。操作使用時可以以float類型或string類型均可。

$timestamp = substr(microtime(true)*1000,0,13);8、獲取文章中的圖片/*?*?獲取文章圖片?*/function?getContentPic($content,$num='1'){????$pattern='/<img.*?src=[\'|\'](.*?)[\'|\'].*?[\/]?>/';????preg_match_all($pattern,htmlspecialchars_decode($content),$match);????if(!emptyempty($match[1])?&&?$num?==?1){????????return?$match[1][0];????}else{????????return?$match[1];????}????return?'';}9、重寫PHP array_push實現自由添加數組鍵值/*?*?重寫array_push?*?@param?$array?array?目標數組?*?@param?$value?mix?鍵值?*?@param?$position?int?索引位置?*?@param?$key?string?鍵名?*?@return?Array?*/function?array_push_position(&$array,?$value=0,?$position,?$key?=?null){????$count?=?0;????$return?=?array();????foreach?($array?as?$k?=>?$v)????{????????if?($count?==?$position)????????{????????????if?(!$key)?$key?=?$count;????????????$return[$key]?=?$value;????????????$inserted?=?true;????????}????????$return[$k]?=?$v;????????$count++;????}????if?(!$key)?$key?=?$count;????if?(!$inserted)?$return[$key];????$array?=?$return;????return?$array;}10、修改XML文件節點

(可以很方便的生成網站地圖,方便SEO優化)

/*?*?Xml文件增加節點?*?@param?$filename?string?文件路徑?*?@param?$data?array?追加數組?*?@param?$nodename?string?節點名稱?*?@return?boole?*/function?addXmlNode($filename,$data,$nodename){????if(is_array($data)?&&?!emptyempty($data)?&&?is_file($filename)?&&?is_string($nodename)){????????$contents?=?file_get_contents($filename);????????$xml?=?@simplexml_load_string($contents);????????foreach($data?as?$key=>$value){????????????foreach($data[$key]?as?$k=>$v){????????????????$item?=?$xml->addChild($nodename);????????????????$item->addChild($k,$v);????????????}????????}????????$xml->asXML();????????$xmlDocument?=?new?DOMDocument('1.0');????????$xmlDocument->preserveWhiteSpace?=?false;????????$xmlDocument->formatOutput?=?true;????????$xmlDocument->loadXML($xml->asXML(),LIBXML_NOERROR);????????$res?=?file_put_contents($filename,$xmlDocument->saveXML());????????return??$res?!==?false?true:$res;????}else{????????throw?new?\think\Exception('Incorrect?parameters');????}}

提示:上述方法基于thinkPHP的異常拋出,如果非thinkPHP框架記得自行修改上述代碼,以免報錯。我懶得改了。

11、uuid生成

生成UUID的格式:8-4-4-4-12

function?createUUID(){????$chars?=?md5(uniqid(mt_rand(),?true));????$uuid?=?substr?(?$chars,?0,?8?)?.?'-'????????.?substr?(?$chars,?8,?4?)?.?'-'????????.?substr?(?$chars,?12,?4?)?.?'-'????????.?substr?(?$chars,?16,?4?)?.?'-'????????.?substr?(?$chars,?20,?12?);????return?$uuid?;}12、計算兩個日期中間相差多少年多少月多少天多少小時function?diffTimes($stime=null){????$stime?=?emptyempty($stime)?time():strtotime($stime);????$now?=?time();????//$dateMonthOne?=?explode('-',?date('Y-m',?$stime));????//$dateMonthTwo?=?explode('-',?date('Y-m',?$now));????$diff?=?[];????$diff['hours']?=?($now?-?$stime)?/?(60?*?60);????//$diff['day']?=?($now?-?$stime)?/?(60?*?60?*?24);????//$diff['month']?=?abs($dateMonthOne[0]?-?$dateMonthTwo[0])?*?12?+?abs($dateMonthOne[1]?-?$dateMonthTwo[1]);????//$diff['year']?=?date('Y',?$now)?-?date('Y',?$stime);????return?intval($diff['hours']).'小時';}13、分鐘數轉時分function?min2hour($min){????$hours?=?intval($min/60);????$minutes?=?$min?%?60;????return?$hours.'小時'.$minutes.'分';}

14、時間友好展示

剛剛、幾分鐘前、幾天前、幾年前

function?mdate($time?=?NULL)?{????$text?=?'';????$time?=?$time?===?NULL?||?$time?>?time()???time()?:?intval($time);????$t?=?time()?-?$time;?//時間差?(秒)????$y?=?date('Y',?$time)-date('Y',?time());//是否跨年????switch($t){????????case?$t?==?0:????????????$text?=?'剛剛';????????????break;????????case?$t?<?60:????????????$text?=?$t?.?'秒前';?//?一分鐘內????????????break;????????case?$t?<?60?*?60:????????????$text?=?floor($t?/?60)?.?'分鐘前';?//一小時內????????????break;????????case?$t?<?60?*?60?*?24:????????????$text?=?floor($t?/?(60?*?60))?.?'小時前';?//?一天內????????????break;????????case?$t?<?60?*?60?*?24?*?3:????????????$text?=?floor($time/(60*60*24))?==1??'昨天?'?.?date('H:i',?$time)?:?'前天?'?.?date('H:i',?$time)?;?//昨天和前天????????????break;????????case?$t?<?60?*?60?*?24?*?30:????????????$text?=?date('m-d?H:i',?$time);?//一個月內????????????break;????????case?$t?<?60?*?60?*?24?*?365&&$y==0:????????????$text?=?date('m-d',?$time);?//一年內????????????break;????????default:????????????$text?=?date('Y-m-d',?$time);?//一年以前????????????break;????}????return?$text;}15、隱藏字符串中間一部分,用*代替function?hideStr($string,?$bengin=0,?$len?=?4,?$type?=?0,?$glue?=?'@')?{????if?(emptyempty($string))????????return?false;????$array?=?array();????if?($type?==?0?||?$type?==?1?||?$type?==?4)?{????????$strlen?=?$length?=?mb_strlen($string);????????while?($strlen)?{????????????$array[]?=?mb_substr($string,?0,?1,?'utf8');????????????$string?=?mb_substr($string,?1,?$strlen,?'utf8');????????????$strlen?=?mb_strlen($string);????????}????}????if?($type?==?0)?{????????for?($i?=?$bengin;?$i?<?($bengin?+?$len);?$i++)?{????????????if?(isset($array[$i]))????????????????$array[$i]?=?'*';????????}????????$string?=?implode('',?$array);????}else?if?($type?==?1)?{????????$array?=?array_reverse($array);????????for?($i?=?$bengin;?$i?<?($bengin?+?$len);?$i++)?{????????????if?(isset($array[$i]))????????????????$array[$i]?=?'*';????????}????????$string?=?implode('',?array_reverse($array));????}else?if?($type?==?2)?{????????$array?=?explode($glue,?$string);????????$array[0]?=?hideStr($array[0],?$bengin,?$len,?1);????????$string?=?implode($glue,?$array);????}?else?if?($type?==?3)?{????????$array?=?explode($glue,?$string);????????$array[1]?=?hideStr($array[1],?$bengin,?$len,?0);????????$string?=?implode($glue,?$array);????}?else?if?($type?==?4)?{????????$left?=?$bengin;????????$right?=?$len;????????$tem?=?array();????????for?($i?=?0;?$i?<?($length?-?$right);?$i++)?{????????????if?(isset($array[$i]))????????????????$tem[]?=?$i?>=?$left???'*'?:?$array[$i];????????}????????$array?=?array_chunk(array_reverse($array),?$right);????????$array?=?array_reverse($array[0]);????????for?($i?=?0;?$i?<?$right;?$i++)?{????????????$tem[]?=?$array[$i];????????}????????$string?=?implode('',?$tem);????}????return?$string;}

使用說明:

第一個參數是需要轉換的字符串;

第二個參數是隱藏的起始位置,當type=4時表示左側保留長度;

第三個參數是需要隱藏的字符串個數(長度)當type=4時表示右側保留長度;

第四個參數type取值所代表的意義:0,從左向右隱藏;1,從右向左隱藏;2,從指定字符位置分割前由右向左隱藏;3,從指定字符位置分割后由左向右隱藏;4,保留首末指定字符串。

第五個參數是分隔符。

16、二維數組按指定鍵排序function?array_msort($array,?$cols){????$colarr?=?array();????foreach?($cols?as?$col?=>?$order)?{????????$colarr[$col]?=?array();????????foreach?($array?as?$k?=>?$row)?{?$colarr[$col]['_'.$k]?=?strtolower($row[$col]);?}????}????$eval?=?'array_multisort(';????foreach?($cols?as?$col?=>?$order)?{????????$eval?.=?'$colarr[\''.$col.'\'],'.$order.',';????}????$eval?=?substr($eval,0,-1).');';????eval($eval);????$ret?=?array();????foreach?($colarr?as?$col?=>?$arr)?{????????foreach?($arr?as?$k?=>?$v)?{????????????$k?=?substr($k,1);????????????if?(!isset($ret[$k]))?$ret[$k]?=?$array[$k];????????????$ret[$k][$col]?=?$array[$k][$col];????????}????}????return?$ret;}17、Base64圖片流轉圖片文件function?saveBase64Image($base64_image_content,$image_path){????if?(preg_match('/^(data:\s*image\/(\w+);base64,)/',?$base64_image_content,?$result)){????????//圖片后綴????????$type?=?$result[2];????????if($type=='jpeg'){????????????$type='jpg';????????}????????//保存位置--圖片名????????$image_name=date('His').str_pad(mt_rand(1,?99999),?5,?'0',?STR_PAD_LEFT).'.'.$type;????????//$image_path?=?'/static/upload/quanzi/'.$memberid.'/image/';????????$image_url?=?$image_path.$image_name;????????if(!is_dir(ROOT_PATH.$image_path)){????????????mkdir(ROOT_PATH.$image_path,0755,true);????????}????????//解碼????????$decode=base64_decode(str_replace($result[1],?'',?$base64_image_content));????????if?(file_put_contents(ROOT_PATH.$image_url,?$decode)){????????????$data['code']='0';????????????$data['imageName']=$image_name;????????????$data['image_url']=$image_url;????????????$data['type']=$type;????????????$data['msg']='保存成功!';????????}else{????????????$data['code']='1';????????????$data['imgageName']='';????????????$data['image_url']='';????????????$data['type']='';????????????$data['msg']='圖片保存失敗!';????????}????}else{????????$data['code']='1';????????$data['imgageName']='';????????$data['image_url']='';????????$data['type']='';????????$data['msg']='base64圖片格式有誤!';????}????return?$data;}18、隨機昵稱function?randnickname(){????$tou=array('快樂','冷靜','醉熏','瀟灑','糊涂','積極','冷酷','深情','粗暴','溫柔','可愛','愉快','義氣','認真','威武','帥氣','傳統','瀟灑','漂亮','自然','專一','聽話','昏睡','狂野','等待','搞怪','幽默','魁梧','活潑','開心','高興','超帥','留胡子','坦率','直率','輕松','癡情','完美','精明','無聊','有魅力','豐富','繁榮','飽滿','炙熱','暴躁','碧藍','俊逸','英勇','健忘','故意','無心','土豪','樸實','興奮','幸福','淡定','不安','闊達','孤獨','獨特','瘋狂','時尚','落后','風趣','憂傷','大膽','愛笑','矮小','健康','合適','玩命','沉默','斯文','香蕉','蘋果','鯉魚','鰻魚','任性','細心','粗心','大意','甜甜','酷酷','健壯','英俊','霸氣','陽光','默默','大力','孝順','憂慮','著急','緊張','善良','兇狠','害怕','重要','危機','歡喜','欣慰','滿意','跳躍','誠心','稱心','如意','怡然','嬌氣','無奈','無語','激動','憤怒','美好','感動','激情','激昂','震動','虛擬','超級','寒冷','精明','明理','猶豫','憂郁','寂寞','奮斗','勤奮','現代','過時','穩重','熱情','含蓄','開放','無辜','多情','純真','拉長','熱心','從容','體貼','風中','曾經','追尋','儒雅','優雅','開朗','外向','內向','清爽','文藝','長情','平常','單身','伶俐','高大','懦弱','柔弱','愛笑','樂觀','耍酷','酷炫','神勇','年輕','嘮叨','瘦瘦','無情','包容','順心','暢快','舒適','靚麗','負責','背后','簡單','謙讓','彩色','縹緲','歡呼','生動','復雜','慈祥','仁愛','魔幻','虛幻','淡然','受傷','雪白','高高','糟糕','順利','閃閃','羞澀','緩慢','迅速','優秀','聰明','含糊','俏皮','淡淡','堅強','平淡','欣喜','能干','靈巧','友好','機智','機靈','正直','謹慎','儉樸','殷勤','虛心','辛勤','自覺','無私','無限','踏實','老實','現實','可靠','務實','拼搏','個性','粗獷','活力','成就','勤勞','單純','落寞','樸素','悲涼','憂心','潔凈','清秀','自由','小巧','單薄','貪玩','刻苦','干凈','壯觀','和諧','文靜','調皮','害羞','安詳','自信','端莊','堅定','美滿','舒心','溫暖','專注','勤懇','美麗','靦腆','優美','甜美','甜蜜','整齊','動人','典雅','尊敬','舒服','嫵媚','秀麗','喜悅','甜美','彪壯','強健','大方','俊秀','聰慧','迷人','陶醉','悅耳','動聽','明亮','結實','魁梧','標致','清脆','敏感','光亮','大氣','老遲到','知性','冷傲','呆萌','野性','隱形','笑點低','微笑','笨笨','難過','沉靜','火星上','失眠','安靜','純情','要減肥','迷路','爛漫','哭泣','賢惠','苗條','溫婉','發嗲','會撒嬌','貪玩','執著','瞇瞇眼','花癡','想人陪','眼睛大','高貴','傲嬌','心靈美','愛撒嬌','細膩','天真','怕黑','感性','飄逸','怕孤獨','忐忑','高挑','傻傻','冷艷','愛聽歌','還單身','怕孤單','懵懂');????$do?=?array('的','愛','','與','給','扯','和','用','方','打','就','迎','向','踢','笑','聞','有','等于','保衛','演變');????$wei=array('嚓茶','涼面','便當','毛豆','花生','可樂','燈泡','哈密瓜','野狼','背包','眼神','緣分','雪碧','人生','牛排','螞蟻','飛鳥','灰狼','斑馬','漢堡','悟空','巨人','綠茶','自行車','保溫杯','大碗','墨鏡','魔鏡','煎餅','月餅','月亮','星星','芝麻','啤酒','玫瑰','大叔','小伙','哈密瓜,數據線','太陽','樹葉','芹菜','黃蜂','蜜粉','蜜蜂','信封','西裝','外套','裙子','大象','貓咪','母雞','路燈','藍天','白云','星月','彩虹','微笑','摩托','板栗','高山','大地','大樹','電燈膽','磚頭','樓房','水池','雞翅','蜻蜓','紅牛','咖啡','機器貓','枕頭','大船','諾言','鋼筆','刺猬','天空','飛機','大炮','冬天','洋蔥','春天','夏天','秋天','冬日','航空','毛衣','豌豆','黑米','玉米','眼睛','老鼠','白羊','帥哥','美女','季節','鮮花','服飾','裙子','白開水','秀發','大山','火車','汽車','歌曲','舞蹈','老師','導師','方盒','大米','麥片','水杯','水壺','手套','鞋子','自行車','鼠標','手機','電腦','書本','奇跡','身影','香煙','夕陽','臺燈','寶貝','未來','皮帶','鑰匙','心鎖','故事','花瓣','滑板','畫筆','畫板','學姐','店員','電源','餅干','寶馬','過客','大白','時光','石頭','鉆石','河馬','犀牛','西牛','綠草','抽屜','柜子','往事','寒風','路人','橘子','耳機','鴕鳥','朋友','苗條','鉛筆','鋼筆','硬幣','熱狗','大俠','御姐','蘿莉','毛巾','期待','盼望','白晝','黑夜','大門','黑褲','鋼鐵俠','啞鈴','板凳','楓葉','荷花','烏龜','仙人掌','襯衫','大神','草叢','早晨','心情','茉莉','流沙','蝸牛','戰斗機','冥王星','獵豹','棒球','籃球','樂曲','電話','網絡','世界','中心','魚','雞','狗','老虎','鴨子','雨','羽毛','翅膀','外套','火','絲襪','書包','鋼筆','冷風','八寶粥','烤雞','大雁','音響','招牌','胡蘿卜','冰棍','帽子','菠蘿','蛋撻','香水','泥猴桃','吐司','溪流','黃豆','櫻桃','小鴿子','小蝴蝶','爆米花','花卷','小鴨子','小海豚','日記本','小熊貓','小懶豬','小懶蟲','荔枝','鏡子','曲奇','金針菇','小松鼠','小蝦米','酒窩','紫菜','金魚','柚子','果汁','百褶裙','項鏈','帆布鞋','火龍果','奇異果','煎蛋','唇彩','小土豆','高跟鞋','戒指','雪糕','睫毛','鈴鐺','手鏈','香氛','紅酒','月光','酸奶','銀耳湯','咖啡豆','小蜜蜂','小螞蟻','蠟燭','棉花糖','向日葵','水蜜桃','小蝴蝶','小刺猬','小丸子','指甲油','康乃馨','糖豆','薯片','口紅','超短裙','烏冬面','冰淇淋','棒棒糖','長頸鹿','豆芽','發箍','發卡','發夾','發帶','鈴鐺','小饅頭','小籠包','小甜瓜','冬瓜','香菇','小兔子','含羞草','短靴','睫毛膏','小蘑菇','跳跳糖','小白菜','草莓','檸檬','月餅','百合','紙鶴','小天鵝','云朵','芒果','面包','海燕','小貓咪','龍貓','唇膏','鞋墊','羊','黑貓','白貓','萬寶路','金毛','山水','音響','尊云','西安');????$tou_num=rand(0,331);????$do_num=rand(0,19);????$wei_num=rand(0,327);????$type?=?rand(0,1);????if($type==0){????????$username=$tou[$tou_num].$do[$do_num].$wei[$wei_num];????}else{????????$username=$wei[$wei_num].$tou[$tou_num];????}????return?$username;?//輸出生成昵稱}19、去除文本中指定的HTML標簽function?strip_selected_tags($text,?$tags?=?array()){????$args?=?func_get_args();????$text?=?array_shift($args);????$tags?=?func_num_args()?>?2???array_diff($args,array($text)):(array)$tags;????foreach?($tags?as?$tag){????????if(preg_match_all('/<'.$tag.'[^>]*>(.*)<\/'.$tag.'>/iU',?$text,?$found)){????????????$text?=?str_replace($found[0],$found[1],$text);????????}????}????return?$text;}20、人民幣金額友好顯示:多少萬、多少億function?transnum($num,$type){????//type:1單位個???2單位萬????$result?=?array();????$leng?=?pow(10,2);//小數位修改最后一個數字????switch($type){????????case?1:????????????if($num?>=?10000){????????????????$result['num']?=?intval(($num/10000)*$leng)/$leng;????????????????if($result['num']?>=?10000){????????????????????$result['num']?=?intval(($num/100000000)*$leng)/$leng;????????????????????$result['rem']?=?'億';????????????????}else{????????????????????$result['rem']?=?'萬';????????????????}????????????}else{????????????????$result['num']?=?intval($num*$leng)/$leng;????????????????$result['rem']?=?'';????????????}????????????break;????????case?2:????????????if($num?>=?10000){????????????????????$result['num']?=?intval(($num/10000)*$leng)/$leng;????????????????????$result['rem']?=?'億';????????????}else{????????????????$result['num']?=?intval($num*$leng)/$leng;????????????????$result['rem']?=?'萬';????????????}????????????break;????}????return?$result['num'].$result['rem'];}21、二維數組去重/**?*?去掉二維數組中的重復項?*?@param?$array2D??????????數組*?@param?$keyArray?????????還原時字段對應的key?*?@return?array????????????去掉了重復項的數組*/?function?array_unique_fb($array2D,$keyArray){????????$temp=array();????????foreach?($array2D?as?$v){????????????$v?=?join(',',$v);??//降維,也可以用implode,將一維數組轉換為用逗號連接的字符串????????????$temp[]?=?$v;????????}?????$temp?=?array_unique($temp);????//去掉重復的字符串,也就是重復的一維數組????????foreach?($temp?as?$k?=>?$v){????????????//$temp[$k]?=?explode(',',$v);???//再將拆開的數組重新組裝???????????$temp[$k]=?array_combine($keyArray?,explode(',',trim($v)));?????}????????return?$temp;?}

以上就是常用PHP業務邏輯demo總結的詳細內容,更多關于PHP業務邏輯資料請關注好吧啦網其它相關文章!

標簽: PHP
主站蜘蛛池模板: 午夜视频高清在线aaa | 在线看免费的污 | 国产性精品 | 国产在线日韩在线 | 久久精品是免费100 久久精品首页 | 麻豆精品视频在线 | 国产麻豆剧传媒精品网站 | 欧美人一级淫片a免费播放 欧美人七十二式性视频教程一 | 日韩欧美中文字幕在线视频 | 亚洲精品推荐 | 成片免费的禁v影片 | 日韩日韩日韩日韩日韩 | 国产成人一区二区三区影院免费 | 亚洲一区日韩 | 日韩一级片免费在线观看 | 亚洲一区二区三区首页 | 殴美一级黄色片 | 久久中文在线 | 中文字幕亚洲欧美 | 亚洲精品主播一区二区三区 | 天天摸天天碰色综合网 | 精品国产高清自在线一区二区三区 | 黄 色 成 年 人 | 美女批日起爽在线观看 | 日韩一区国产二区欧美三区 | 免费看欧美日韩一区二区三区 | 黄色一级片中国 | 久久成人免费视频 | 日本免费不卡一区二区 | 久久一区二区三区99 | 午夜在线观看cao | 女人被狂躁的免费视频网站软件 | 国产免费v片在线看 | 女人被免费网站视频在线 | 性一级视频 | 中文字幕亚洲精品日韩精品 | 六月丁香伊人 | 1024cc香蕉在线观看免费 | 一 级 黄 色 片生活片 | 久久丝袜精品综合网站 | 蛇女欲潮三级在线看 |