PHP ordenar array pelo valor de sua coluna


Quando precisei ordenar um array em PHP pelo valor de sua coluna, no caso a desse exemplo, usei a coluna “pontuacao”. Abaixo o array em sua composição normal:

$arr = array(
  [
    'atendimento_id' => 838362,
    'data_criado' => '2020-08-11 16:35:29',
    'deleted' => '0',
    'pontuacao' => 201603
  ],
  [
    'atendimento_id' => 838364,
    'data_criado' => '2020-08-11 16:35:29',
    'deleted' => '0',
    'pontuacao' => 201605
  ],
  [
    'atendimento_id' => 838361,
    'data_criado' => '2020-08-11 16:35:29',
    'deleted' => '0',
    'pontuacao' => 201607
  ],
  [
    'atendimento_id' => 838360,
    'data_criado' => '2020-08-11 16:35:29',
    'deleted' => '0',
    'pontuacao' => 201601
  ]
);

A seguir como ficou o array após usar 2 funções nativas do PHP para realizar essa tarefa, usort e strcmp:

$arr = array(
  [
    'atendimento_id' => 838362,
    'data_criado' => '2020-08-11 16:35:29',
    'deleted' => '0',
    'pontuacao' => 201603
  ],
  [
    'atendimento_id' => 838364,
    'data_criado' => '2020-08-11 16:35:29',
    'deleted' => '0',
    'pontuacao' => 201605
  ],
  [
    'atendimento_id' => 838361,
    'data_criado' => '2020-08-11 16:35:29',
    'deleted' => '0',
    'pontuacao' => 201607
  ],
  [
    'atendimento_id' => 838360,
    'data_criado' => '2020-08-11 16:35:29',
    'deleted' => '0',
    'pontuacao' => 201601
  ]
);

function ordenar($a, $b)
{
    return strcmp($a["pontuacao"], $b["pontuacao"]);
}

usort($arr, "ordenar");
Moeda Tipo Valor
Dollar Compra R$ 5,97
Dollar Venda R$ 5,97
Data 22/01/2025

January 2025
S M T W T F S
 1234
567891011
12131415161718
19202122232425
262728293031