Damian Jóźwiak ha publicado un RFC para incorporar una extensión ext/csv independiente al núcleo de PHP. La página del RFC está en el wiki de PHP y la implementación se encuentra en el pull request 24199 de GitHub. El trabajo parte de la extensión girgias/csv de Gina Peter Banyard, distribuida bajo BSD-3-Clause, y añade gestión de archivos y flujos. La deprecación de los métodos CSV de SplFileObject en PHP 8.6 es una de las razones del proyecto.
La API inicial reúne seis funciones y una clase en el espacio de nombres Csv\. El análisis y la serialización siguen RFC 4180 por defecto. El procesamiento no depende de la configuración regional y no utiliza el mecanismo propietario de escape. Los delimitadores, los caracteres de encapsulado y las secuencias de fin de línea pueden tener varios bytes. El diseño permite analizar colecciones con reglas estrictas o laxas. Los archivos CSV pueden iterarse de forma perezosa, con salida mediante streaming.
Las pruebas PHPT cubren el análisis, la serialización, los flujos, la vida útil de los recursos y diversos casos límite. La integración continua pasa actualmente en las plataformas probadas, incluidas las configuraciones debug, ZTS y AddressSanitizer. Una API orientada a objetos más completa, con Reader/Writer e interfaces basadas en capacidades, queda para una posible discusión futura. Jóźwiak pide comentarios sobre la API pública, el nombre LazyLaxCollection y la activación permanente u opcional durante la compilación.
Gina Peter Banyard no ha revisado ni respaldado el RFC. Jóźwiak señala que algunas partes de la implementación se desarrollaron con ayuda de LLMs. También afirma que revisó el código y que asume la responsabilidad del aporte. La publicación abre el debate y no convoca una votación.




Comentarios
Aún no hay comentarios — escribe el primero.
Inicia la conversación
Sin cuenta ni contraseña — introduce tu correo y te enviamos un enlace de acceso de un solo uso. ¿Primera vez? Todo se configura automáticamente.
Tu valoración se aplicará automáticamente al iniciar sesión.
Revisa tu bandeja de entrada
Hemos enviado un enlace de acceso a …. Ábrelo en este dispositivo — esta pestaña te conectará automáticamente.
¿No llega nada? Mira en la carpeta de spam — y marca el correo como «No es spam» para que la próxima vez llegue directo.