Cita: Ya sea la constante MYSQLI_USE_RESULT o MYSQLI_STORE_RESULT dependiendo del resultado deseado. Por defecto se usa la constante MYSQLI_STORE_RESULT.
el resultado deseado es como quieres que la api recupere la consulta: Si usas MYSQLI_STORE_RESULT vas a traer todo el resultado de la consulta y lo vas a guardar en memoria de tal forma que cuando usas fech_* lo que recives es un result set en memoria y cualquier cambio que hagas sobre el, solo afecta de forma aislada los datos en los registros .
Si tu usas MYSQLI_USE_RESULT cuando utilices fech_* vas a solicitar tu resultado registro por registro directamente de la base de datos.
Cita: Por ello mi pregunta anterior, si hay la necesidad en algunos casos de usar MYSQLI_USE_RESULT o si es correcto omitirlo
La mayor parte del tiempo usas el default ( MYSQLI_STORE_RESULT), pero si tu consulta va ser particularmente costosa en una tabla con gran cantidad de registros vas a preferir usar MYSQL_USE_RESULT, pero debes de tomar en cuenta que con esa opción las tablas relacionadas a los registros que estas recuperando no aceptaran otras operaciones.
Espero eso te aclare un poco mas el uso de esas constantes.