php – Consulta en MySQL no me devuelve mas de 33 registros

Tengo una API REST sencilla realizada con PHP y MySQL y ya esta en un servidor. Tengo el problema de que mi consulta para recoger todos los datos de una tabla, y me la devuelva en formato JSON, siempre me devuelve una lista vacía.

La tabla tiene unos 2056 registros, y realizando pruebas he visto que si añado un LIMIT 33 si me devuelve la lista con los 33 primeros registros, pero a partir de ahí no devuelve ninguno.

He tocado la configuración del php.ini aumentando varios parámetros, los cuales:

memory_limit y post_max_size

Pero tampoco ha cambiado mucho. La versión de PHP del servidor, para este dominio, esta en la 5.6 que también la he subido a todas las posibles de 7.X y tampoco…

Este el el método que utilizo para recoger todos los datos:

function getDocumentos(){

    $query = "SELECT * FROM documentos";
    $resultado = conexion()->query($query);
    
    $listaDocumentos = array();
    
    foreach($resultado as $res){
        $listaDocumentos() = $res;
    }
      
    return $listaDocumentos;
}

Y mi archivo index.php para llamar a este método es el siguiente:

<?php
    
    header('Access-Control-Allow-Origin: *'); 
    header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");
    header('Content-Type: application/json');

    require_once('funciones_documentos.php');

    switch($_SERVER('REQUEST_METHOD')){

        case 'POST':

            $postBody = file_get_contents("php://input"); //Obtener todos los datos del body.
            $convertirArray = json_decode($postBody,true);

            if(json_last_error() == 0){ //El JSON no da error.
                crearDocumento($convertirArray);
                http_response_code(200);

            }else{
                http_response_code(400);
            }

        break;

        case 'GET':

            $contenido_url = $_GET('url');
            $id_cliente = intval(preg_replace('/(^0-9)+/','',$contenido_url),10);

            if($contenido_url == ''){
                
                $respuesta = getDocumentos();

                $listadoDocumentos = json_encode($respuesta);
                                
                echo convertirUTF8($listadoDocumentos);
                http_response_code(200);
      
            }else{
                //Cojo todos los documentos de un cliente.
                $respuesta = getDocumentosCliente($id_cliente);
                $listaDocumentos = json_encode($respuesta);
                echo convertirUTF8($listaDocumentos);
                http_response_code(200);
            }
        break;

        case 'DELETE':
      
            $contenido_url = $_GET('url');
            $id_documento = intval(preg_replace('/(^0-9)+/','',$contenido_url),10);

            if($contenido_url == ''){ //Si no hay ID no elimina nada.
                http_response_code(400);
                
            }else{ //Borramos con el id

                eliminarDocumento($id_documento);
                http_response_code(200);
            }
        break;
    }

?>

Es algo básico, pero esta funcionando, solo que no me devuelve todos los datos de una tabla y me parece muy raro que solo devuelva hasta 33. He probado a traerme los datos con Postman, y con la pagina ReqBin y usando la aplicación en si, que esta hecha en angular y nada

Sabrían por que?