"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como classificar uma matriz multidimensional por uma coluna especificada no PHP?

Como classificar uma matriz multidimensional por uma coluna especificada no PHP?

Postado em 2025-03-25
Navegar:585

How to Sort a Multidimensional Array by a Specified Column in PHP?

classificando uma matriz multidimensional por uma coluna especificada em php

para classificar uma matriz multidimensional [e php por uma coluna específica, use a php interna e] A chave para classificar é fornecer uma função de comparação personalizada que determina a ordem dos elementos da matriz. Second. um número inteiro negativo se o primeiro elemento for considerado "menos" que o segundo. Cada elemento representa um registro com várias colunas. Para classificar a matriz pela coluna 'name' , use o seguinte código:

usort ($ data, function ($ a, $ b) { return strcmp ($ a ['nome'], $ b ['nome']); }); Esta função de comparação personalizada usa a função

strcmp

para comparar os valores da coluna

'name'
    para cada elemento. A matriz classificada terá os elementos solicitados em ordem alfabética com base no
  • 'name'
  • colun. Por exemplo, para classificar por
  • 'número'
  • e então
  • 'name'
  • :

usort ($ data, function ($ a, $ b) { if ($ a ['número'] == $ b ['número']) { return strcmp ($ a ['nome'], $ b ['nome']); } retornar $ a ['número'] - $ b ['número']; });

Recursos avançados

Você também pode especificar os seguintes recursos avançados:

usort($data, function($a, $b) {
  return strcmp($a['name'], $b['name']);
});
set o segundo parâmetro da função de comparação para [&& &&s Order.
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3