Tiene algunos problemas con el almacenamiento en búfer de salida. Principalmente, estoy tratando de ejecutar el buffer de salida con la devolución de llamada ob_gzhandler, pero me sigue diciendo que está usando un tipo de compresión no compatible. Todo está habilitado, y creo que el problema es que la ejecución de ob_get_level() al inicio de mi secuencia de comandos genera un nivel de 1. php.ini ha puesto mi output_buffering en 4096.ob_get_level() comienza en el nivel 1
Si me quedo algo como:
while(ob_get_level() > 0){
ob_end_clean();
}
Luego puedo ejecutar con éxito ob_start() con la devolución de llamada ob_gzhandler. Pero me pregunto si debería ser un problema. Durante mi secuencia de comandos realizo llamadas a ob_clean() en varios puntos ya que evito apilar demasiados almacenamientos intermedios ya que he leído que esto puede aumentar el rendimiento. No estoy seguro de lo que debería estar haciendo aquí.
Saludos.
Sí, creo que sí. Se establece como: output_buffering = 4096 (que dije antes). A lo que me refiero es a si dejo eso tal como está, y simplemente ejecuto el ciclo que tengo arriba para poder comenzar a dar salida al almacenamiento en búfer ob_gzhandler? –
@Jason Lewis: Eso depende de ti. Probablemente dejaría el OB predeterminado activado para todos los guiones, y lo terminaría con el ciclo 'while' en los casos en que quisiera usar el mío. – Piskvor
Se suponía que debía decir que usé ob_get_clean() en algunos lugares, para almacenar el resultado en algunas variables y, finalmente, se vacía. ¿Es esta una buena manera de hacerlo, o debo comenzar un nuevo buffer para cada lugar donde quiero capturar la salida y usar ob_get_flush() en su lugar? –