Para estrenar la sección PHP, destinada al código abierto tan potente que me ha ayudado a realizar muchos de mis trabajos, voy a comentar algunas cosas que fui descubriendo en mis comienzos y que quizás a alguno que otro pueda darle una mano.
Saltos de línea:
Cuando traemos texto desde un campo de formulario o desde una base de datos, estamos recibiendo ese texto en forma de string, como un simple texto sin formato, mientras que al mostrarlo en el código HTML necesitamos los tags con los que se le indica cada salto de línea al navegador.
Para poder traer uno de estos textos y mostrarlo correctamente existe la función nl2br() provista por PHP; esta función no hace más que convertir los saltos de carro “\n” por un line break ”
” que corresponde al salto de línea en HTML.
Array a string y viceversa:
A veces me encontre con información combinada que debía almacenar en una base de datos (imágenes con su referencia, detalles de objetos, etc) y se me planteaban dos opciones: la primera era hacer una tabla con un listado de cada uno de los objetos y despues otra tabla en donde guardaba los detalles y los unia mediante una referencia a ese objeto, lo que suponia que por cada objeto iba a tener unas 3 o 4 filas en la tabla de detalles, más allá de que la consulta iba a ser algo complicado ya que debia encontrar todas las coincidencias y ordenarlas segun lo necesitara.
Por otro lado, se me ocurrió utilizar una sola tabla, en donde la fila correspondia al objeto principal (imaginemos una competencia), en la que tengo los campos de ID, nombre, texto que le corresponde, una imagen para mostrar, y lo más importante es que en solo dos campos de esa fila guardo toda una galería de imágenes con sus descripciones correspondientes. Cómo?, tengo un campo que se llama “imagenes” y otro “descripciones”, en donde almaceno cada uno de éstos separados por un simbolo que sea extraño (supongamos “&”, “|”, “*”) por que en una de esas lo pueden llegar a usar en las descripciones y podrian llegar a ocurrir errores, aunque también se puede solucionar detectando que se ingresó en ellos el separador nuestro y cambiarlo por otra cosa, pero todavia no voy contar eso… sigamos con lo que estábamos.
Para poder lograr esto, PHP nos provee de las funciones implode y explode que permiten convertir una matriz (array) en una cadena de texto separada por un “objeto separador” y viceversa. Para ver esto mejor lo voy a ejemplificar en codigo:
Explode: Separador
$cadena = “perro,casa,pato,conejo,gato”;
$array = explode(”,”, $cadena);
Esto nos devolveria un array donde cada item sería cada uno de los objetos separados por coma.
Implode: Unificador
$array = array(”coco”,”caca”,”coca”,”caco”);
$cadena = implode(”,”, $array);
Y este nos devolvería una cadena con todos los items del array unidos por una coma entre medio.
Por hoy creo que ya esta, sencillo, no?
Un comentario
Mantengase al tanto de los comentarios con el feed RSS de los comentarios de esta publicación.
Muy Bueno tu blog. Se aprende mucho. Gracias
Gabriela