• 2011
  • Ago
  • 10

PHP y archivos de texto

Antes de la versión 5 de php, cuando uno no disponia de una base de datos para almacenar información normalmente recurria al metodo de alojar en un archivo de texto (txt). ¿Por qué digo que antes de PHP5? Porque con dicha versión se embebió una base de datos llamada Sqlite, que nos permite tener un motor de base de datos completo que se aloja en un solo archivo, lo que nos libra de andar dependiendo de MySQL, perfecto para los host que no lo disponen, o sus servidores mysql son lentos, que se yo, razones pueden haber muchas.

txt.png

Pero, bien aplicado, alojar en archivos txt puede resultar muy interesante y útil, como es el caso de flatpress por ejemplo (el cms que uso para este blog) u otros que hay por ahi como SimplePhpBlog (otro blog), dokuwiki (cms para wikis), entre muchos otros que hay.

Me puse a experimentar cosas basicas con el manejo de php y archivos de texto, porque queria hacer editable una pagina donde habia una lista corta y no iba a crear una base Mysql para ello, ni siquiera una Sqlite. Es mucho mas simple hacerlo mediante este sistema.

Aqui dejo un ejemplo, son dos archivos, uno es un archivo php que se encarga de mostrar unos comentarios y el formulario para agregarlos. Y en otro archivo txt es donde se alojan los comentarios.

La idea es que los interesados en el tema puedan ver mas o menos como funciona. Dentro del archivo php deje comentarios para que mas o menos se hagan una idea del funcionamiento.

Como conclusión creo que es algo muy interesante de aprender, hay muchos casos en los que no vale la pena la creación de una base de datos, o si simplemente no se quiere hacerlo, no sé. Por ahi se me viene la idea de que modificando levemente ese archivo se puede hacer un registro de sucesos. O, ir adaptandolo a algo mas complejo, no vas a lograr un flatpress tan facil, pero de a poco se va aprendiendo.

Comentarios


Francisco Avatar de Francisco

11 de Agosto del 2011 a las 19:06

Me parece bastante útil lo de los archivos de texto, es verdad que no todo el mundo quiere crear una base de datos para unos simples comentarios, ni para pequeñas cosas,muy buena la herramienta que has subido.

Cada uno tiene sus características, por ejemplo es mysql es más seguro, que los archivos de texto, pero como dices hay hostings que no dan mysql ( Es muy raro eso ) además normalmente siempre dan menos espacio de mysql que el espacio para archivos, también es verdad que a veces los servidores de mysql se caen, quedando inactiva tu web si es que usas base de datos.

He visto un montón lo de sqlite, pero nunca supe lo que era, sinceramente prefiero que este se guarde en una mysql, pues si está en un solo archivo es lo mismo, además normalmente le ponen un límite máximo por archivo que no es muy elevado (En byethost, el tamaño máximo por archivo es de 4mb), si tu sqlite llega a esa cantidad, es posible que el servidor no te acepte el archivo y por tanto te lo elimine.

Por eso prefiero archivos de texto, al estar subdividido en carpetas puedo administrar mi contenido mejor, además si se cae el servidor mysql no pasa nada.

Debería de haber más hostings que no incluyesen base de datos mysql, por que hay gente que realmente no las usa, y eso aumenta su precio.

Joaquin Avatar de Joaquin

11 de Agosto del 2011 a las 20:22

Coincido totalmente en tu comentario. En lo de sqlite tenes toda la razón, en realidad seria una buena alternativa a Mysql en hosting gratuitos (donde aveces es lento) pero al limitarte a 4mb, resulta insuficiente.

Ya voy a ponerme en contacto contigo via email para que charlemos sobre lo de flatpress en español, me parece interesante porque en la pagina oficial casi todo esta en inglés o en italiano incluso y ofrecer cosas en varios idiomas dentro de la misma pagina se vuelve un desorden.

Francisco Avatar de Francisco

12 de Agosto del 2011 a las 10:59

Me gusta mucho la herramienta, hoy la estuve probando, me parece bastante buena, aunque yo la personalizaria con algunas tablas y gravatar…

¿La hiciste tu? Aunque siceramente para los comentarios si que usaria Sqlite, pues dudo que nunca alcance los 4mb, y es uno de los escasos casos donde prefiero usarlo.

Sobre flatpress, estoy muy interesado, pero borré mi antigua cuenta de msn donde te tenía agregado y creé esta, es la que tengo puesta en este comentario.

Joaquin Avatar de Joaquin

15 de Agosto del 2011 a las 05:22

Si lo hice yo, obviamente es un script realizado asi nomás, se le puede agregar gravatar muy facilmente, asi como tambien modificar las tablas.

Y lo que decis de sqlite, es así, es mucho mas recomendable para estos casos usar sqlite, por causas obvias: Al ser una base de datos uno puede agregar comentarios, paginarlos, seleccionar solo algunos, eliminar, modificar.. en fín, las ventajas que ofrece una base de datos.

Saludos

Claudio Avatar de Claudio

13 de Noviembre del 2011 a las 00:41

Muy interesante, me gusta la idea de usar archivos de texto para no depender de nadie mas que mi código PHP. El tema es que a grandes cantidades de datos se haría lento, por lo menos en teoría ya que buscando unos dicen que es más rápido el archivo a la base de datos y viceversa.

Joaquin Avatar de Joaquin

7 de Diciembre del 2011 a las 08:02

Como mencionas claudio, bases de datos de gran tamaño deben ser administradas con motores dedicados a ello como MySQL, no solo por un tema de velocidad y de espacio (Notarás que las bases de datos en archivos ocupan mas) sino por la facilidad que ofrecen estos sistemas para administrarlo.

Pero eso es para grandes volumenes de datos, para cosas simples y medias, usar archivos para guardar datos no es para nada malo.

Saludos

Añadir comentario

Rellene el siguiente formulario para añadir sus propios comentarios