>  기사  >  백엔드 개발  >  PHP를 사용하여 정렬된 배열로 키 이름을 유지하는 방법은 무엇입니까?

PHP를 사용하여 정렬된 배열로 키 이름을 유지하는 방법은 무엇입니까?

WBOY
WBOY원래의
2024-05-03 15:36:02889검색

정렬된 배열의 키 이름을 유지하려면 다음 방법을 사용할 수 있습니다. ksort() 및 krsort()를 사용하여 키별로 정렬하고 키 순서를 유지합니다. 여러 열(키 포함)을 기준으로 동시에 정렬하려면 array_multisort()를 사용하세요. 데이터 정렬을 제어하기 위한 사용자 정의 비교기 함수를 정의합니다.

如何使用 PHP 维护排序后的数组中的键名?

PHP를 사용하여 정렬된 배열로 키 이름을 유지하는 방법은 무엇입니까?

때때로 PHP에서 배열을 정렬한 후 원래 키 이름을 유지하고 싶을 때가 있습니다. 방법은 다음과 같습니다.

ksort()krsort() 함수 사용 ksort()krsort() 函数

ksort()krsort() 按键对数组进行排序。这些函数分别按升序和降序对保持键名:

// 按键升序排序
$array = ['name' => 'John', 'age' => 30, 'city' => 'New York'];
ksort($array);

// 按键降序排序
$array = ['name' => 'John', 'age' => 30, 'city' => 'New York'];
krsort($array);

使用 array_multisort() 函数

array_multisort()

ksort() krsort() 키를 기준으로 배열을 정렬합니다. 이러한 함수는 키 이름을 각각 오름차순과 내림차순으로 유지합니다.

// 按键升序排序,如果键相等则按值降序排序
$names = ['name1', 'name3', 'name5', 'name2', 'name4'];
$ages = [20, 30, 50, 40, 60];

array_multisort($names, SORT_ASC, SORT_NUMERIC, $ages, SORT_DESC);

array_multisort() 함수를 사용하세요.

array_multisort()를 사용하여 여러 배열 열을 동시에 정렬하세요. time, 키 포함:

function compareKeys($a, $b) {
    return strcmp($a['key'], $b['key']);
}

$array = [{'key' => 'a'}, {'key' => 'c'}, {'key' => 'b'}];
usort($array, 'compareKeys');

사용자 정의 비교기 사용

🎜 키를 포함하여 정렬 규칙을 제어하기 위해 자체 비교기 함수를 정의할 수 있습니다. 🎜
// 获取用户数据
$users = [
    ['id' => 1, 'name' => 'John Doe'],
    ['id' => 3, 'name' => 'Jane Smith'],
    ['id' => 2, 'name' => 'Bob Johnson']
];

// 使用 ksort 按键升序排序用户
ksort($users);

// 按升序的键输出用户列表
foreach ($users as $user) {
    echo $user['id'] . ': ' . $user['name'] . '<br>';
}
🎜🎜실용 사례: 키를 기준으로 사용자 정렬 🎜🎜rrreee🎜이 단락 코드는 원래 키 이름을 유지하면서 ID를 기준으로 오름차순으로 정렬된 사용자 목록을 출력합니다. 🎜

위 내용은 PHP를 사용하여 정렬된 배열로 키 이름을 유지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.