整理了兩個函式,記錄下來
* 對二維陣列排序進行乙個封裝
* @param unknown_type $dataarray 要排序的陣列
* @param unknown_type $sortinfoarray 排序資訊陣列,可以多個組合,格式如下:
* array(
array(
'sortkey'=>'name', 'sortorder'=>'sort_asc', 'sorttype'=>'sort_string'
), array(
'sortkey'=>'size', 'sortorder'=>'sort_desc', 'sorttype'=>'sort_string'));
* sortkey:$dataarray要用於排序的列名,
* sortorder:sort_asc - 按照上公升順序排序/sort_desc - 按照下降順序排序
* sorttype:sort_regular - 將專案按照通常方法比較/sort_numeric - 將專案按照數值比較/sort_string - 將專案按照字串比較
* @throws exception
* @return unknown
*/function array_multisort_crm ($dataarray, $sortinfoarray)
foreach ($sortinfoarray as $sortarr)
$sortrule[$sortarr['sortkey']] = '$'.$sortarr['sortkey'];
if (array_key_exists('sortorder', $sortarr))
if (array_key_exists('sorttype', $sortarr))
}foreach ($dataarray as $key => $varr) [$key] = $varr[$sortarr['sortkey']];}}
$evalstring = 'array_multisort('.implode(',', $sortrule).',$dataarray);';
eval($evalstring);
return $dataarray;
}/**
* 字串擷取,支援中文和其他編碼
** @param string $str 需要轉換的字串
* @param string $start 開始位置
* @param string $length 擷取長度
* @param string $charset 編碼格式
* @param string $suffix 截斷字串字尾
* @return string
*//**
* 字串擷取,支援中文和其他編碼,如果擷取後的字串是原來字串尾部,則不加再加上$suffix
* @param unknown_type $str 需要轉換的字串
* @param unknown_type $start 開始位置
* @param unknown_type $length 擷取長度
* @param unknown_type $suffix 截斷字串字尾
* @param unknown_type $charset 編碼格式
* @return string
*/function substr_ext($str, $start, $length, $suffix="", $charset="utf-8")
elseif(function_exists('iconv_substr'))
else
|[\xf0-\xff][\x80-\xbf]/";
$re['gb2312'] = "/[\x01-\x7f]|[\xb0-\xf7][\xa0-\xfe]/";
$re['gbk'] = "/[\x01-\x7f]|[\x81-\xfe][\x40-\xfe]/";
$re['big5'] = "/[\x01-\x7f]|[\x81-\xfe]([\x40-\x7e]|\xa1-\xfe])/";
preg_match_all($re[$charset], $str, $match);
$slice = join("",array_slice($match[0], $start, $length));
}if (!preg_match("/()$/", $str))
return $slice;
}
二維陣列 字元陣列與字串
要求 了解多維陣列的概念 掌握二維陣列的使用 掌握用字元陣列存放字串的方法 掌握字串的輸入及輸出方法 二維陣列的定義 例 int a 2 3 定義乙個二維陣列 該陣列有2行3列共6個元素 這6個元素都存放int型資料 儲存時先儲存第一行的3個元素,然後再儲存第二行的3個元素 可將此二維陣列看成是乙個...
二維陣列 字串 API
1 二維陣列 陣列中的元素,又指向乙個新的子陣列 何時使用 1.儲存橫行豎列的資料時 2.分組儲存上下級包含關係時 如何建立 1.先建立空陣列,再初始化元素為子陣列 var data data 0 0,0,0,0 data 1 0,0,0,0 何時使用 不確定子陣列的個數或內容時 2.建立時就初始化...
二維陣列,字串,多維陣列
二維陣列 有2個下標的陣列成為二維陣列 定義 型別 陣列名 常量表示式1 常量表示式2 注意事項,二維陣列定義時,可以不指定第一維的長度,但必須給定第二維.例 int 3 字元陣列 用於存放字元變數的陣列成為字元陣列.字元陣列屬於一維陣列,元素型別char 例 char c 20 字元陣列串 存放字...