English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
이 글은 PHP가 이차원 배열의 특정 키를 정렬하는 방법에 대해 설명합니다. 여러분과 공유하고, 다음과 같이 구체적으로 설명합니다:
/** * 쿼리 결과 집합을 정렬합니다. * @access public * @param array $list 쿼리 결과 * @param string $field 정렬할 필드 이름 * @param string $sortby 정렬 유형 (asc 정확 정렬 desc 역정렬 nat 자연 정렬) * @return array */ function list_sort_by($list, $field, $sortby = 'asc') { if (is_array($list)) { $refer = $resultSet = array(); foreach ($list as $i => $data) { $refer[$i] = &$data[$field]; } switch ($sortby) { case 'asc': // 정렬 asort($refer); break; case 'desc': // 역정렬 arsort($refer); break; case 'nat': // 자연 정렬 natcasesort($refer); break; } foreach ($refer as $key => $val) { $resultSet[] = &$list[$key]; } return $resultSet; } return false; } /** * 예제 * 2차원 배열의 id 키 값으로 내림차순으로 정렬하려면 어떻게 해야 합니까?(也就是id越大的排在越前)? */ $list = array( 0 => array( 'id' => 1, 'name' => '첫째' ), 1 => array( 'id' => 3, 'name' => '셋째' ), 2 => array( 'id' => 2, 'name' => '둘째' ), 3 => array( 'id' => 4, 'name' => '네트째' ), ); //답변 $new_list = list_sort_by($list, 'id', 'desc'); print_r($new_list);
실행 결과는 다음과 같습니다:
Array ( [0] => Array ( [id] => 4 [name] => 넷째 ) [1] => Array ( [id] => 3 [name] => 셋째 ) [2] => Array ( [id] => 2 [name] => 둘째 ) [3] => Array ( [id] => 1 [name] => 첫째 ) )
PHP 관련 내용에 대한 더 많은 정보를 원하는 독자는 사이트의 특집을 확인할 수 있습니다: 《PHP 배열(Array) 작업 기술大全》、《PHP 기본 문법 초보 교본》、《PHP 연산 및 연산자 사용 요약》、《php 객체 지향 프로그래밍 초보 교본》、《PHP 네트워크 프로그래밍 기술 요약》、《php 문자열(string) 사용 요약》、《php+mysql 데이터베이스 작업 초보 교본》 및 《php 일반 데이터베이스 작업 기술 요약》
이 문서에서 설명된 내용이 여러분의 PHP 프로그래밍에 도움이 되길 바랍니다.
언급: 이 문서의 내용은 인터넷에서 가져왔으며, 저작권자가 소유하고 있으며, 인터넷 사용자가 자발적으로 기여하고 자체적으로 업로드한 내용입니다. 이 사이트는 소유권을 가지지 않으며, 인공적인 편집을 하지 않았으며, 관련 법적 책임을 부담하지 않습니다. 저작권 문제가 의심되는 내용이 있다면, notice#w로 이메일을 보내 주세요.3codebox.com(보내실 때, #을 @으로 변경해 주세요. 신고를 하시고, 관련 증거를 제공해 주시면, 사이트가 의심스러운 저작권 내용을 즉시 삭제합니다。)