/* * php 針對一維數組字符串長度排序 * $arr 要排序的數組 * $order 排序方式:升序--》asc,降序----》desc * $obj 排序目標:根據鍵----》key,根據值---》val * return 通過排序處理的數組 */ function selfSort($arr,$order = 'asc',$obj = ''){ if(!$arr){echo '空數組不作處理';return false;} switch ($order.$obj){ case 'asc': sort($arr); break; case 'desc': rsort($arr); break; case 'asckey': ksort($arr); break; case 'desckey': krsort($arr); break; case 'ascval': asort($arr); break; case 'descval': arsort($arr); break; } $len=count($arr); //該層循環控制 須要冒泡的輪數 for($i=1;$i<$len;$i++) { //該層循環用來控制每輪 冒出一個數 須要比較的次數 for($k=0;$k<$len-$i;$k++) { if($order = 'asc'){ if(strlen($arr[$k]) < strlen($arr[$k+1])) { $tmp=$arr[$k+1]; $arr[$k+1]=$arr[$k]; $arr[$k]=$tmp; } }else{ if(strlen($arr[$k]) > strlen($arr[$k+1])) { $tmp=$arr[$k+1]; $arr[$k+1]=$arr[$k]; $arr[$k]=$tmp; } } } } return $arr; }
$endLongArr = array( '網絡科技有限公司','信息技術有限公司','文化股份有限公司','文化傳媒有限公司','信息科技有限公司','網絡技術股份有限公司', '網絡科技股份有限公司','科技有限責任公司','科技股份有限公司','技術股份有限公司','企業管理有限公司','動漫有限公司', '數碼科技有限公司','軟件科技有限公司','文化傳播有限公司','軟件開發有限公司','信息網絡有限公司','信息系統開發有限公司', '計算機技術有限公司','互動娛樂有限公司','互聯網有限公司','互動娛樂發展有限公司','金融信息服務有限公司','信息服務有限公司', '娛樂發展有限公司','軟件股份有限公司','文化創意有限公司','數字技術有限公司','文化傳播股份有限公司','體育文化有限公司', '網絡信息技術有限公司','數碼科技有限公司','數字科技有限公司','網絡技術有限公司','經營管理有限公司','環保科技有限公司', '互娛科技有限公司','互娛網絡科技有限公司','經濟技術合做公司','電子科技有限公司','軟件科技發展有限公司','互動科技有限公司', '互動科技股份有限公司','物聯技術有限公司','健康科技有限公司','科技開發有限責任公司','科技開發有限公司','餐飲管理有限公司', ); p(selfSort($endLongArr,'desc')); $endMidArr = array( '傳媒有限公司','股份有限公司','有限責任公司','技術有限公司','科技有限公司','商貿有限公司','開發有限公司','發展有限公司','服務有限公司', '創意有限公司','文化有限公司','管理有限公司','技術合做公司','控股集團','數碼有限公司', ); p(selfSort($endMidArr,'desc')); $endStArr = array('有限公司','集團',); p(selfSort($endStArr,'desc'));