dominios y alojamiento web en hostalia

Cadenas en PHP

01 de enero de 2001
Valoración del artículo:
Aspectos relevantes de las cadenas o strings en PHP, un tipo de variables muy utilizado. Lista de caracteres protegidos.
Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.
Uno de los tipos de variables más corrientes, a las que tendremos que hacer frente en la mayoría de nuestros scripts, son las cadenas. También podremos conocerlas como strings o cadenas de caracteres y no son más que información de tipo texto y que pueden contener uno o más caracteres alfanuméricos, es decir, una mezcla de caracteres numéricos y no numéricos.

Por decirlo con otras palabras, en general, cuando guardamos cualquier texto en una variable, lo que estamos guardando técnicamente le llamamos cadenas o strings.

Para asignar a una variable un contenido de este tipo, lo escribiremos entre comillas dando lugar a declaraciones de este tipo:

$cadena="Esta es la información de mi variable";

Si queremos ver en pantalla el valor de una variable o bien un mensaje cualquiera usaremos la instrucción echo como ya lo hemos visto anteriormente:

echo $cadena; //sacaría "Esta es la información de mi variable"

echo "Esta es la información de mi variable"; //daría el mismo resultado

Podemos yuxtaponer o concatenar varias cadenas poniendo para ello un punto entre ellas:

<?
$cadena1="Perro";
$cadena2=" muerde";
$cadena3=$cadena1.$cadena2;
echo $cadena3; //El resultado es: "Perro muerde"
?>

Ejecutar script

También podemos introducir variables dentro de nuestra cadena lo cual nos puede ayudar mucho en el desarrollo de nuestros scripts. Lo que veremos no es el nombre, sino el valor de la variable:

<?
$a=55;
$mensaje="Tengo $a años";
echo $mensaje; //El resultado es: "Tengo 55 años"
?>

Ejecutar script

La pregunta que nos podemos plantear ahora es...¿Cómo hago entonces para que en vez del valor "55" me salga el texto "$a"? En otras palabras, cómo se hace para que el símbolo $ no defina una variable sino que sea tomado tal cual. Esta pregunta es tanto más interesante cuanto que en algunos de scripts este símbolo debe ser utilizado por una simple razón comercial (pago en dólares por ejemplo) y si lo escribimos tal cual, el ordenador va a pensar que lo que viene detrás es una variable siendo que no lo es.

Pues bien, para meter éste y otros caracteres utilizados por el lenguaje dentro de las cadenas y no confundirlos, lo que hay que hacer es escribir una contrabarra delante:

Carácter Efecto en la cadena
$ Escribe dólar en la cadena
" Escribe comillas en la cadena
Escribe contrabarra en la cadena
8/2 Escribe 8/2 y no 4 en la cadena

Además, existen otras utilidades de esta contrabarra que nos permiten introducir en nuestro documento HTML determinados eventos:

Carácter Efecto en la cadena
t Introduce una tabulación en nuestro texto
n Cambiamos de línea
r Retorno de carro

Estos cambios de línea y tabulaciones tienen únicamente efecto en el código y no en el texto ejecutado por el navegador. En otras palabras, si queremos que nuestro texto ejecutado cambie de línea hemos de introducir un echo "<br>" y no echo "n" ya que este ultimo sólo cambia de línea en el archivo HTML creado y enviado al navegador cuando la página es ejecutada en el servidor. La diferencia entre estos dos elementos puede ser fácilmente comprendida mirando el código fuente producido al ejecutar este script:

<HTML>
<HEAD>
<TITLE>cambiolinea.php</TITLE>
</HEAD>
<BODY>
<?
echo "Hola, n sigo en la misma línea ejecutada pero no en código fuente.<br>Ahora cambio de línea ejecutada pero continuo en la misma en el código fuente."
?>
</BODY>
</HTML>

Ejecutar script
Echar un vistazo al codigo fuente del navegador

El código fuente que observaríamos seria el siguiente:

<HTML>
<HEAD>
<TITLE>cambiolinea.php</TITLE>
</HEAD>
<BODY>
Hola,
 sigo en la misma línea ejecutada pero no en código fuente.<br>Ahora cambio de línea ejecutada pero continuo en la misma en el código fuente.</BODY>
</HTML>

Las cadenas pueden asimismo ser tratadas por medio de funciones de todo tipo. Veremos estas funciones más adelante con más detalle. Tan sólo debemos retener que existen muchas posibles acciones que podemos realizar sobre ellas: Dividirlas en palabras, eliminar espacios sobrantes, localizar secuencias, remplazar caracteres especiales por su correspondiente en HTML o incluso extraer las etiquetas META de una página web.

Compartir en redes sociales

Comentarios
Fueron enviados 8 comentarios al artículo
1 comentario no revisado
7 comentarios revisados:
Por: el Piez@
06/12/2002
He estado probando algunos codigos referentes a las cadenas de texto y me he dado cuenta que el caracter protegido \n se puede remplazar por un salto de linea real que se verá en la página.
Ejemplo
<?
$cadena = "Hola, esto es una linea y esta es
otra (en codigo fuente)";
echo $cadena;
?>
Por: Pepotis
09/9/2004
Otra manera de escribir el nombre de una variable sin que se muestre la cadena que esta contiene, es poniendo el texto a mostrar entre comillas simples en vez de dobles. Un ejemplo:
<?php
$cadena="La manzana es verde";
echo "La variable contiene: $cadena";
/*Mostrará: La variable contiene:La manzana es verde*/
echo 'La variable se llama $cadena';
/*Mostrará: La variable se llama $cadena*/
ec
?>
Por: dekada
12/6/2005
Hola tengo un problemita con un insert en una base de datos mysql es que cuando forma la cadena para la insercion de los datos no me inserta ningun registro en la tabla, es decir, no es que no funciona realmente que es cuando paso mas de 5 campo entre ellos hay campos vacios '' no me inserta el registro y tan poco me da un error
Por: Odena
08/12/2005
a mi por el contrario, ahorita estoy teniendo problemillas porque quiero mandar textos que tengan saltos de lineas pero ni el caracter n ( ) ni el salto de linea real me funcionan ¿alguna otra opcion?
Por: Sergio
22/2/2006
Yo añadiría a lo dicho en el artículo que si lo que quieres es hacer un cambio de línea escribiendo en un archivo de texto curiosamente debes escribir:

Curiosamente también, a veces funciona poniendo solamente pero si quieres estar 100% seguro de que se va a escribir un cambio de línea, te aconsejo el (no me preguntes el porque!).
Por: necorage
11/9/2006
Buenas!
Tengo problemillas en hacer el siguiente Script, en principio simple:

<?
echo 8/2 ."<br>";
echo 8/2;
?>

Lo he probado de varias maneras pero nada de nada ...
que estoy haciendo mal? :?
Saludos y gracias por adelantado
Saludos
23/9/2010
Hola este es un comentario para el anterior comentario.

No se nota en el navegador las tabulaciones, saltos de linea o retornos de carro. ya que solo sirve para verlo en el codigo fuente mas no el el navegador. si quieres ejecutarlo en el navegador, tienes la etiqueta <br> para hacer una cambio de linea y otras para hacer lo mismo pero que se muestre.

Manuales relacionados
Categorias relacionadas
El autor
Rubén Alvarez
Redactor de DesarrolloWeb.com
http://www.desarrolloweb.com
Lectura recomendada
Últimas noticias
Donaciones
Si piensas que te hemos ayudado y merecemos tu apoyo económico...