miércoles, 8 de enero de 2014

Cadena de caracteres PHP

En este tutorial se comentaran  los pormenores relacionados con cadenas de caracteres, las funciones existentes, etc.
Cadenas de caracteres
Una cadena consiste en una secuencia de caracteres que se encuentran comprendidos entre unos delimitadores que pueden ser:
-Comillas simples ‘ ‘ 
-Comillas dobles ” “
-Documento incrustado <<< >>>
En caso de que se desee por ejemplo unas ” ” dentro de las comillas de la cadena de caracter es necesario realizar la acción que se denomina escapar un caracter que consiste en precederlo de una es decir “. Los caracteres especiales que pueden aparecer dentro de un documento con delimitación son:
SecuenciaSignificado
nNueva línea
rRetorno de carro
tTabulación horizontal
Barra invertida
$Signo de dólar
Comillas dobles
[0-7]{1,3}Caracter ASCII que coincide con el numero octal
x[0-9A-Fa-f]{1,2}Caracter ASCII que coincide con el numero hexadecimal
El caso de documento incrustado es diferente al de ambas comillas. Su sintaxis es la siguiente:
<<<Identificador
Cadena de caracteres
Identificador;
El resultado obtenido con documento incrustado es el texto mostrado igual que se ha introducido.
La función chr(valor) nos devuelve en una variable del tipo cadena el caracter de la tabla de códigos ASCII asociado a un valor que recibe como parámetro, el valor que se pase debe estar entre 0 y 255.
La función ord(cadena) nos devuelve un número entero que se corresponde con el código ASCII del primer caracter que recibe como parámetro.
Visualización de cadenas
- Echo: Es el modo de visualización mas empleado. Su sintaxis es la siguiente: echo “texto”;
- Print: Es la mas sencilla de todas y se encarga de mostrar una cadena de caracteres sobre su salida estándar. No soporta ningún formato de salida y su sintaxis es: print(cadena);
Printf(formato,[valores]); Su funcionamiento es el mismo que en el caso anterior. La única diferencia es que este soporta formatos de salida como su alineación (por defecto a la izquierda), valor numérico ( numero mínimo de caracteres que deben mostrarse), numero de decimales y tipo de datos cuyas posibilidades son:
SímboloSignificado
%Representa el símbolo del porcentaje
bEl argumento se trata como nº entero y se representa en codificación binaria.
cEl argumento se trata como nº entero y se muestra el caracter cuyo código ASCII se corresponde con el valor.
dEl argumento se trata como nº entero y se representa en codificación decimal sin parte fraccionaria
fEl argumento se trata como un nº de tipo double y se representa como un decimal sin coma flotante
oEl argumento se trata como un nº entero y se representa en codificación octal
sEl argumento se trata y representa como una cadena de caracteres
xEl argumento se considera un nº entero y se representa en codificación hexadecimal en minúsculas
XEl argumento se considera un nº entero y se representa en codificación hexadecimal en mayúsculas
Sprintf(formato,[valores]); su funcionamiento es idéntico a printf. Lo único que la cadena resultante de aplicarle un determinado formato se guarda en una variable.
Alteración del contenido
En ocasiones es necesario emplear dichas funciones para alterar el formato de salida de las cadenas. Las funciones empleadas para modificar dicho formato son:
- chop(cadena); Devuelve la cadena de caracteres con los caracteres de blanco y nueva línea eliminados
- ltrim(cadena); Elimina los blancos que aparecen a la derecha de una cadena de caracteres
- rtrim(cadena) ; Elimina los blancos que aparecen por la derecha en una cadena de caracteres
- trim(cadena); Elimina los blancos que aparecen a izquierda y derecha de la cadena de caracteres
- str_pad(cadena,longitud,relleno,lugar); Comprueba si la longitud es menor que el valor indicado, si es así añade los caracteres necesarios.El lugar de añadir puede ser:
str_pad_left añade por la derecha(opción por defecto), str_pad_right añade por la izquierda y str_pad_both añade por ambos extremos.
- str_repeat(caracter,numero_veces); Repite un caracter el numero de veces indicado
- strtolower(cadena); Pasa toda la cadena a letras minúsculas
- strtoupper(cadena); Pasa toda la cadena a letras mayúsculas
- ucfirst(cadena); Pasa a mayúscula el primer caracter de una cadena
- ucwords(cadena); Pone en mayúsculas el primer caracter de cada palabra de la cadena
- str_replace(subcadena1,subcadena2,cadena); Sustituye una palabra por otra dentro de una cadena
- strtr(cadena,originales,traducidos); Traduce ciertos caracteres .Ejemplo: $persona=strt($persona,”áéíóú”,”a,e,i,o,u”); de esta forma cambiaría todas las vocales con acento por vocales sin acento.
- substr_replace(cadena,nueva,comienzo,longitud); Sustituye una porción del contenido de una cadena
Acceso al contenido
- strlen(cadena); Indica el nº de caracteres de una cadena
- count_chars(cadena,modo); Numero de repeticiones de un caracter en una cadena. Los modos posibles son:
0->Matriz indexada con frecuencia de aparición de todos los caracteres del código ASCII
1->Matriz con caracteres ASCII con frecuencia mayor que 0
2->Matriz con caracteres que no aparecen en la cadena
3->Cadena con caracteres usados en el código ASCII
4->Cadena con caracteres no usados en el código ASCII
- substr_count(cadena,subcadena); Frecuencia de aparición de una cadena
-strchr(cadena,caracter); Devuelve la subcadena que comienza en la primera aparición del caracter indicado
- strstr(cadena,subcadena); Localiza subcadena dentro de la cadena original
- stristr(cadena,subcadena); Igual que la función anterior pero sin distinción entre mayúsculas y minúsculas
- strpos(cadena,subcadena); Primera ocurrencia de una cadena en otra
- strrpos(cadena,subcadena); Ultima ocurrencia de una cadena en otra
- ord(cadena); Devuelve el valor ASCII de un caracter
- substr(cadena,comienzo,longitud); Porción de texto que empieza en una posición y tiene una longitud
- strcmp(cadena1,cadena2); Compara dos cadenas siendo sensible a mayúsculas y minúsculas
- strcasecmp(cadena1,cadena2); Compara dos cadenas sin ser sensible a mayúsculas y minúsculas
- strncmp(cadena1,cadena2,tamaño); Compara los N primeros caracteres de una cadena
- strnatcmp(cadena1,cadena2); Sensible a mayúsculas y minúsculas. Compara dos cadenas.
- strnatcasecmp(cadena1,cadena2); No sensible a mayúsculas y minúsculas. Compara dos cadenas.
- chunk_split(cadena,longitud,separador); Coge una cadena de caracteres e introduce separadores a una distancia determinada. No modifica el original sino que es una función nueva.
- explode(separador,cadena,limite); Permite obtener una matriz de cadenas de caracteres extraídas del original.
- implode(separador,elementos); Junta en una cadena los elementos de una matriz usando como concatenación el separador pasado como parámetro.
- parse_str(cadena); Permite extraer y crear variables que forman parte de una cadena que se corresponde con un “query string” recibido de una URL.
*Apoyo a HTML
- addcslashes(cadena,lista); Devuelve una cadena que tiene escapados todos los caracteres como parámetro.
- addslashes(cadena); Devuelve una cadena que tiene escapados todos los caracteres lógicos
- stripcslashes(); y stripslashes(); Reciben cadenas que pueden contener caracteres de de escapes y los desescapan
- quotemeta(cadena); Esacapa los caracteres especiales
- htmlspecialchars(cadena); Lleva a cabo conversiones como &->&amp,”->&quot
- htmlentities(); Convierte todos los caracteres a entidades html. á pasa a ser &aacute;
- get_html_translation_table(htmlentities o html_specialchars); Obtiene la relación de traducción de cada caracter especial.
- array_flip(); Intercambia las claves por los valores en array asociativo.
- get_meta_tags(nombre_fichero,include_path); Devuelve todos los meta tags que contiene un HTML.
- strip_tags(cadena,mostrar_tags); Omite etiquetas PHP y HTML , lo de mostrar_tags son las cadenas HTML y PHP no deben ser omitidas en la lectura.
- n12br(cadena); Permite sustituir saltos de línea por <br>
- parse_url(cadena_url); Devuelve una matriz asociativa con los siguientes campos:
CampoSignificado
schemeHttp
hostIp o DNS
portpuerto
usernombre usuario
passwordcontraseña
pathpath completo al recurso
queryquery string con datos al recurso
urldecodedecodifica la información
urlencodeCodifica la información
Fuente:enlace

No hay comentarios:

Publicar un comentario

Entradas populares