Comentaba hace pocos dÃas con un compañero, la manera tan complicada que tenemos de resolver las cosas en programación debido sobretodo al desconocimiento del lenguaje.
Durante muchos años he programado en lenguajes derivados del Basic. Concretamente para web he utilizado el VBScript. Con el paso del tiempo adquirà la práctica de completar el limitado funcionamiento de los métodos del lenguage con métodos propios y me ha ido muy bien hasta hoy.
Ahora bien, llegó el momento de pasar a un lenguaje diferente, el PHP. Me puse manos a la obra y con el paso de los dÃas fuà adquiriendo práctica con el lenguaje, sobretodo grácias a la excelente guÃa de la web de php.net
Pero como suele suceder, las manÃas y los hábitos son dificiles de evitar al embarcarnos en algo nuevo. Tendemos a realizar los mismos pasos con los que ya estamos acostumbrados y nos sentimos cómodos.
Lo và claro, grácias a la inestimable ayuda de mi compañero, cuando me encontré con la necesidad de eliminar guiones al inicio y al final de una cadena de texto.
Ejemplo: ---Hola mundo.-
En VBScript se puede realizar de varias maneras, pero la que yo escogi fué la siguiente:
texto="---Hola mundo.-"do while left( texto, 1 ) = "-"texto = mid(texto, 2)loopdo while right( texto, 1) = "-"texto = left( texto, len( texto ) - 1 )loopresponse.write texto ' --> Aquà texto seria "Hola mundo."
Básicamente recorria la cadena de texto descartando primero por la izquierda y luego por la derecha los caracteres ” - “.
Pues bien, cuando empecé mi andadura por PHP hice una funcion similar. Craso error ya que PHP proveé, out of the box, al programador con casi cualquier funcionalidad.
Efectivamente; redescubrà una funcionalidad para mà desconocida de una función que en VBScript ya habia utilizado: trim(). En VBScript, trim() solamente descarta los espacios en blanco al principio y al final de la cadena de texto que le pasamos por parámetro, pero en PHP dicha funcionalidad puede ser ampliada.
La función está definida como:
string trim ( string cadena [, string lista_caracteres] )
Por defecto funciona igual a su homónima de VBScript, elimina espacios, pero en el segundo parámetro le podemos indicar cual o cuáles queremos que elimine al principio y al final de la cadena de texto.
Con lo que el código anterior quedarÃa de la forma:
$texto = trim( $texto, '-' );
Y ya lo tenemos, como se puede apreciar, un ahorro importante de código!
muy buena tu ayuda. no sabÃa al respecto.
pelotudo!
gracias a ti entendi un poco mejor la funcion te lo agradesco