A resposta correta é:
<?php
function listaCategorias($conexao) {
$categorias = array();
$query = "select * from categorias";
$resultado = mysqli_query($conexao, $query);
while($categoria = mysqli_fetch_assoc($resultado)) {
array_push($categorias, $categoria);
}
return $categorias;
}
Queria entender o porquê de "$categoria = mysqli_fetch_assoc($resultado)"
estar dentro de um while. O símbolo de igual é um operador de atribuição então para mim não faz sentido. Dentro dos parenteses deveríamos ter alguma coisa que seja booleana, por exemplo, while(x==3).
Obrigado!