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,59
Dollar Venda R$ 5,59
Data 06/06/2025

June 2025
S M T W T F S
1234567
891011121314
15161718192021
22232425262728
2930