Funciones de cadenas
Como ya se ha dicho, en PHP, además de las funciones creadas por el usuario,
existen múltiples funciones para realizar distintas tareas. Todas ellas están
ya predefinidas, por lo que lo único que tenemos que hacer es llamarlas,
pasarles los parámetros necesarios, y ellas realizan la tarea.
Para poder usarlas debemos conocer, el nombre de la función, los parámetros
que debemos pasar, y por supuesto saber que tarea realizan.
Ya hemos visto algunas de estas funciones, concretamente las referidas a el
tratamiento de arrays por lo que no las volveremos a repetir aquí. Sin
embargo hay funciones que relacionan los arrays con cadenas de texto que sí las
veremos.
Por supuesto, hay muchas más funciones predefinidas de las que vamos a
incluir en este manual, aquí daremos sólo las mas usadas, o las que pueden
sernos de más utilidad.
Desde ahi tienes distintos
enlaces para ver las funciones predefinidas, agrupadas por categorías.
En esta primera página y en la siguiente de este tema veremos las funciones
para cadenas de texto.
Contar caracteres de una cadena
Estas funciones, y las que veremos en los siguientes apartados, no alteran
los argumentos que les pasamos, por lo que para obtener el resultado debemos
guardarlas siempre en otra variable.
$resultado=nombreFuncion($argumentos);
strlen($texto);
Da como resultado el número de caracteres que tiene la cadena pasada en el
argumento $texto.
chr(num);
En esta función pasamos como parámetro un número entre 0 y 255, y el
resultado es caracter asignado a ese número en el código ASCII. ASCII es un
código muy usado en programación, que asocia cada letra, signo o caracter con
un número. Consta de 256 signos diferentes, si bien los 31 primeros no se
corresponden con un carácter, sino con otras funciones tales como controles, escape,
tabuladores, etc.
ord("caracter");
Es la función contraria a la anterior. pasamos como parámetro un caracter o
signo, y la función nos devolverá el número en ASCII de ese carácter. Si
pasamos como argumento más de un caracter o una cadena de texto, la función nos
devolverá únicamente el código ASCII del primer carácter.
count_chars($texto,modo);
Esta función indica cuales son los caracteres en código ASCII que aparecen
en el texto y/o cuantas veces aparece cada uno de ellos. En $texto pasamos como argumento la cadena a analizar,
y en modo escribiremos un número
del 0 al 4. Según el modo la función devolverá un array o una cadena. El
comportamiento de los distintos modos es el siguiente.
- Modo 0: Devuelve un array asociativo con todos los caracteres del código ASCII. En la clave aparece el número del caracter en ASCII, y en el valor indica el número de veces que se repite ese caracter.
- Modo 1: Devuelve un array asociativo con únicamente los caracteres que aparecen en el texto. La clave nos da el número del carácter en ASCII, y el valor es el número de veces que se repite ese carácter.
- Modo 2: Devuelve un array asociativo con los caracteres del código ASCII que no aparecen en el texto. La clave es el número de carácter, y el valor es siempre igual a 0, ya que éste es el número de veces que aparecen.
- Modo 3: Devuelve una cadena de texto en la que aparecen los caracteres que contiene el texto. Estos aparecen una sola vez (aunque estén repetidos), y ordenados según el código ASCII.
- Modo 4: Devuelve una cadena de texto en la que aparecen los caracteres del código ASCII que no aparecen en el texto, ordenados según este código.
str_word_count($texto,modo);
Esta función diferencia las palabras del texto y permite hacer varias
operaciones según el modo. En el argumento $texto,
pasamos el texto a analizar, y en modo pondremos los números, 0, 1 ó 2. Dependiendo
del modo la función dará los siguientes resultados:
- Modo 0: Devuelve el número de palabras que contiene el $texto.
- Modo 1: Devuelve un array indexado con todas las palabras que contiene el $texto.
- Modo 2: Devuelve un array asociativo donde la clave indica en qué número de caracter de la cadena comienza la palabra (empieza a contar desde 0), y el valor es la palabra en sí.
substr_count($texto,$subcadena);
Devuelve un número que indica las veces que una determinada $subcadena (carácter, palabra, etc.) aparece dentro
de una cadena de texto $texto.
strpos($texto,"caracter");
Devuelve un número que indica la primera posición del "caracter" pasado en el segundo argumento,
dentro de la cadena $texto
pasado como primer argumento.
Si el carácter indicado en el segundo argumento no está en la cadena
devolverá el valor boleano FALSE, representado por una cadena vacía.
Si en lugar de un carácter en el segundo argumento pasamos una cadena,
comprobará si esta cadena (subcadena) está incluida en la cadena principal,y
nos devolverá el número donde comienza la subcadena.
strrpos($texto,"caracter");
Funciona de forma análoga a la anterior, sólo que el número que devuelve es
el de la última posición del "caracter"
dentro de la cadena $texto.
stripos($texto,"caracter");
Funciona igual que la función strpos()
pero sin tener en cuenta la diferencia entre mayúsculas y minúsculas.
strripos($texto,"caracter");
Funciona igual que la función strrpos()
pero sin tener en cuenta la diferencia entre mayúsculas y minúsculas.
En la siguiente página de ejemplo se utilizan algunas funciones de las
explicadas anteriormente:
CADENAS DE TEXTO
Las principales funciones que relacionan las variables de cadenas y los
arrays son:
explode("separador",$texto);
Separa los elementos de un texto devolviendolos en un array. En "separador" se indican uno o varios
caracteres dónde se debe hacer la partición del texto para definir los
distintos elementos del array. $texto es
la variable que contiene el texto que se convertirá en array.
Por ejemplo, $palabras=explode(" ",$texto);,
separará el texto en sus diferentes palabras, las cuales serán los elementos
del array $palabras. De igual modo, $caracteres=explode("",$texto);, separará
el texto en sus diferentes caracteres.
El carácter o caracteres incluidos en "separador".
se eliminan del texto, de manera que si separamos palabras, el espacio en
blanco que había entre ellas no está en los elementos del array.
implode("elemento_union",$array);
Convierte un array en cadena de texto. Es la función contraria a explode(), Como segundo argumento debemos pasar un
array $array, El array se
transforma en cadena, y el primer argumento "elemento_union"es
una cadena de 0, 1, o varios carecteres, que aparecerá escrita entre cada elemento
del array.
Esta función es muy útil para ver los elementos que contiene un array,
mediante: $verArray=implode(",",$array);
join("elemento_union",$array);
Convierte un array en cadena de texto. Esta función es exactamente igual que
la anterior, los argumentos que pasamos son los mismos y funciona de igual
manera.
chunk_split($texto,num_caracteres);
Devuelve un array en el que cada elemento consiste en un trozo de la cadena
pasada en el primer argumento ($texto), de
tantos caracteres como el número indicado en el segundo argumento (num_caracteres).
Devuelve la cadena de texto pasada en el argumento $texto con todas sus letras en mayúsculas.
strtolower($texto);
Devuelve la cadena de texto pasada en el argumento $texto con todas sus letras en minúsculas.
ucwords($texto);
Devuelve la cadena de texto pasada en el argumento $texto con la primera letra de cada
palabra pasada a mayúsculas, siempre que ésta sea un carácter alfabético.
ucfirst($texto);
Devuelve la cadena de texto pasada en el argumento $texto con la primera letra de la cadena
en mayúsculas, siempre que ésta sea un carácter alfabético.
En el siguiente enlace se muestra una página de ejemplo en la que se usan
las funciones anteriores:
El código aplicado para crear la página anterior puedes verlo en el
siguiente enlace:
ELIMINAR Y REEMPLAZAR UN TEXTO
str_replace($buscar,$remplazar,$texto);
Esta función es particularmente útil para remplazar una palabra o trozo de texto
por otro, ya que dentro del texto indicado en el tercer argumento $texto, busca los trozos que coinciden con
la cadena indicada en el primer argumento, $buscar,
y los sustituye por la cadena indicada en el segundo argumento $remplazar.
Si en el segundo argumento $remplazar
indicamos una cadena vacia "",
lo que hará la función es eliminar del $texto
los trozos coincidentes con $buscar.
str_ireplace($buscar,$remplazar,$texto);
Esta función es igual que la anterior, pero no tiene en cuenta las
diferencias entre letras mayúsculas y minúsculas.
substr($texto,comienzo,longitud);
Devuelve una parte de la cadena pasada en el primer argumento $texto. El segundo argumento es un número
que indica en que carácter empieza la cadena devuelta, y el tercero indica su longitud.
El tercer argumento longitud
es opcional, y si no se indica, la cadena devuelta llegará hasta el final de la
cadena original.
Los caracteres de la cadena empiezan a contarse desde el número 0, al igual
que en los arrays, de forma que el primer carácter tiene el número 0, el
segundo el 1, y asi sucesivamente. Esto hay que tenerlo en cuenta al poner el
segundo argumento comienzo.
Si en comienzo ponemos un
número mayor que la longitud de la cadena, la función devolverá
"false".
Si en comienzo ponemos un
número negativo, los caracteres empezarán a contarse desde el final de la
cadena, de forma que si ponemos por ejemplo -20, la cadena devuelta serán los
20 últimos caracteres de la cadena original ($texto).
substr_replace($texto,$sustituir,comienzo,longitud);
Devuelve la cadena pasada en el primer argumento $texto, en la cual se sustituye un texto por otro. El texto
nuevo se indica en el segundo argumento $sustituir
El tercer argumento indica el comienzo del texto sustituido (viejo) y el cuarto
su longitud, ambos argumentos deben ser números que indican la posición del
carácter (tercero) y la cantidad de caracteres a sustituir.
Al igual que en la función anterior, si no se indica el argumento longitud, se entiende que ésta es hasta el
final de la cadena; los caracteres se empiezan a contar desde el 0; y si
ponemos en comienzo un número
negativo, empezaremos a contar desde el final de la cadena.
str_pad($texto,largo,$relleno,tipo_relleno);
Alarga la cadena de texto $texto
hasta la longitud indicada en largo,
para ello se utiliza la cadena indicada en $relleno.
Es decir, si queremos que una cadena ocupe más espacio del que tiene,
alargándola, por, ejemplo, mediante puntos o guiones, en el argumento $relleno escribiremos ese carácter, con lo
cual se alargará la cadena hasta la longitud indicada.
El cuarto argumento tipo_relleno
es opcional, indica en que lado de la cadena queremos que aparezcan los
caracteres de relleno, podemos poner tres valores: STR_PAD_RIGHT los caracteres de relleno aparecerán por la
derecha, es la opción por defecto; STR_PAD_LEFT,
el relleno aparece a la izquierda; y STR_PAD_BOTH,
el relleno aparece repartido a ambos lados de la cadena.
ltrim($texto,"lista_caracteres");
Modifica el texto pasado en el primer argumento, $texto: elimina los primeros caracteres del $texto, si éstos están en la lista del
segundo argumento, "lista_caracteres".
rtrim($texto,"lista_caracteres");
Modifica el texto pasado en el primer argumento, $texto: elimina los últimos caracteres del $texto, si éstos están en la lista del
segundo argumento, "lista_caracteres".
trim($texto,"lista_caracteres");
Modifica el texto pasado en el primer argumento, $texto: elimina tanto los primeros caracteres como los
últimos del $texto, si éstos
están en la lista del segundo argumento, "lista_caracteres".
strtr($texto,"lista_1","lista_2");
Modifica el texto pasado en $texto,
de manera que sustituye los caracteres de "lista1"
por los de "lista2".
El primer caracter indicado en "lista1"
es sustituido por el primero de "lista2",
el segundo de "lista1"
es sustituido por el segundo de "lista2",
y así sucesivamente. Si alguna de las listas es más larga que la otra, los
caracteres sobrantes se ignoran.
En la siguiente página de ejemplo, mediante varios formularios, el usuario
puede modificar un texto escrito por él mismo, utilizando algunas de las
funciones anteriores.
Puedes ver el código de esta página en el siguiente enlace, el código tiene
comentarios para ver cómo está construida la página:
chunk_split($texto,num,"caracter");
Devuelve la misma cadena del primer argumento $texto en la cual cada cierto número de caracteres indicado
en el segundo argumento num, se
incluye el texto indicado en el tercer argumento: "caracter".
str_repeat($texto,num);
Devuelve el texto pasado en el primer argumento, $texto, repetido el numero de veces indicado en el segundo
argumento, num.
strrev($texto);
Devuelve la cadena pasada en el argumento $texto
invertida, (de derecha a izquierda).
htmlspecialchars($texto);
Devuelve la misma cadena pasada $texto,
en la cual se han traducido al lenguaje HTML ciertos caracteres especiales que
necesitan escribirse de manera distinta en HTML. Estos son: & = &; " = "; < = <; > = >.
htmlentities($texto);
Devuelve la misma cadena pasada $texto,
en la cual se han traducido al lenguaje HTML todos los caracteres especiales
que se escriben de manera distinta en HTML. Nótese que a diferencia de la
anterior, que sólo traduce 4 caracteres, ésta función devuelve también la
conversión de otros caracteres, como pueden ser las vocales con acento o la
letra ñ.
strip_tags($texto,"etiq_permitidas");
Elimina todas las etiquetas de HTML y PHP que haya en el texto del primer
argumento. El segundo argumento es opcional e indica cuales son las etiquetas
permitidas, (que no se eliminarán), estas deben indicarse entre los signos <
... >.
En el siguiente enlace se muestra un ejemplo en el que se utilizan algunas
de estas funciones.
FUNCIONES DE FECHA Y HORA
(PHP 4, PHP 5)
date — Dar
formato a la fecha/hora local
Descripción
string date ( string
$format
[, int $timestamp
= time() ] )
Devuelve una cadena formateada según el formato dado usando el
parámetro de tipo integer
timestamp
dado o el momento actual si no se da una marca de tiempo. En otras palabras, timestamp
es opcional y por defecto es el
valor de time()Parámetros
format
El formato de la fecha de salida tipo string. Vea
las opciones de formato más abajo. También hay varias constantes
de fecha predefinidas que pueden usarse en su lugar, así por ejemplo
DATE_RSS
contiene la cadena de formato 'D,
d M Y H:i:s'.
Los siguientes caracteres están reconocidos
en el parámetro de cadena
format |
||
Carácter de
format |
Descripción
|
Ejemplo de
valores devueltos
|
Día
|
---
|
---
|
d
|
Día del mes, 2 dígitos con ceros iniciales
|
01 a 31
|
D
|
Una representación textual de un día, tres letras
|
Mon hasta Sun
|
j
|
Día del mes sin ceros iniciales
|
1 a 31
|
l ('L'
minúscula)
|
Una representación textual completa del día de la semana
|
Sunday hasta Saturday
|
N
|
Representación numérica ISO-8601 del día de la semana
(añadido en PHP 5.1.0)
|
1 (para lunes)
hasta 7 (para domingo)
|
S
|
Sufijo ordinal inglés para el día del mes, 2 caracteres
|
st, nd, rd
o th. Funciona bien con j
|
w
|
Representación numérica del día de la semana
|
0 (para
domingo) hasta 6 (para sábado)
|
z
|
El día del año (comenzando por 0)
|
0 hasta 365
|
Semana
|
---
|
---
|
W
|
Número de la semana del año ISO-8601, las semanas
comienzan en lunes (añadido en PHP 4.1.0)
|
Ejemplo: 42 (la 42ª
semana del año)
|
Mes
|
---
|
---
|
F
|
Una representación textual completa de un mes, como
January o March
|
January hasta December
|
m
|
Representación numérica de una mes, con ceros iniciales
|
01 hasta 12
|
M
|
Una representación textual corta de un mes, tres letras
|
Jan hasta Dec
|
n
|
Representación numérica de un mes, sin ceros iniciales
|
1 hasta 12
|
t
|
Número de días del mes dado
|
28 hasta 31
|
Año
|
---
|
---
|
L
|
Si es un año bisiesto
|
1 si es
bisiesto, 0 si no.
|
o
|
Número de año ISO-8601. Esto tiene el mismo valor que Y, excepto que si el número de la
semana ISO (W) pertenece al año anterior o
siguiente, se usa ese año en su lugar. (añadido en PHP 5.1.0)
|
Ejemplos: 1999 o 2003
|
Y
|
Una representación numérica completa de un año, 4 dígitos
|
Ejemplos: 1999 o 2003
|
y
|
Una representación de dos dígitos de un año
|
Ejemplos: 99 o 03
|
Hora
|
---
|
---
|
a
|
Ante meridiem y Post meridiem en minúsculas
|
am o pm
|
A
|
Ante meridiem y Post meridiem en mayúsculas
|
AM o PM
|
B
|
Hora Internet
|
000 hasta 999
|
g
|
Formato de 12 horas de una hora sin ceros iniciales
|
1 hasta 12
|
G
|
Formato de 24 horas de una hora sin ceros iniciales
|
0 hasta 23
|
h
|
Formato de 12 horas de una hora con ceros iniciales
|
01 hasta 12
|
H
|
Formato de 24 horas de una hora con ceros iniciales
|
00 hasta 23
|
i
|
Minutos, con ceros iniciales
|
00 hasta 59
|
s
|
Segundos, con ceros iniciales
|
00 hasta 59
|
u
|
Microsegundos (añadido en PHP 5.2.2)
|
Ejemplo: 654321
|
Zona Horaria
|
---
|
---
|
e
|
Identificador de zona horaria (añadido en PHP 5.1.0)
|
Ejemplos: UTC, GMT, Atlantic/Azores
|
I (i mayúscula)
|
Si la fecha está en horario de verano o no
|
1 si está en
horario de verano, 0 si no.
|
O
|
Diferencia de la hora de Greenwich (GMT) en horas
|
Ejemplo: +0200
|
P
|
Diferencia con la hora de Greenwich (GMT) con dos puntos
entre horas y minutos (añadido en PHP 5.1.3)
|
Ejemplo: +02:00
|
T
|
Abreviatura de la zona horaria
|
Ejemplos: EST, MDT ...
|
Z
|
Índice de la zona horaria en segundos. El índice para
zonas horarias al oeste de UTC siempre es negativo, y para aquellas al este
de UTC es siempre positivo.
|
-43200 hasta 50400
|
Fecha/Hora Completa
|
---
|
---
|
c
|
Fecha ISO 8601 (añadido en PHP 5)
|
2004-02-12T15:19:21+00:00
|
r
|
Fecha con formato » RFC 2822
|
Ejemplo: Thu, 21 Dec 2000 16:01:07
+0200
|
U
|
Segundos desde la Época Unix (1 de Enero del 1970 00:00:00
GMT)
|
Vea también time()
|
Los caracteres no reconocidos en la
cadena de formato serán impresos tal cual. El formato Z siempre
devolverá 0 cuando se usa gmdate().
Nota:
Ya que esta función sólo acepta marcas
de tiempo de tipo integer el
carácter de formato u sólo es útil cuando se usa la función date_format()
con marcas de tiempo basadas en usuario creadas con date_create().
timestamp
El parámetro opcional
timestamp
es una marca de tiempo Unix de tipo integer que
por defecto es la hora local si no se proporciona ningún valor a times tamp
. En otras palabras, es por defecto
el valor de la función time().
FUNCIONES MATEMATICAS
- abs— Valor absoluto
- acos — Arco coseno
- acosh — Arco coseno hiperbólico
- asin — Arco seno
- asinh — Arco seno hiperbólico
- atan2 — Arco tangente de dos variables
- atan — Arco tangente
- atanh — Arco tangente hiperbólica
- base_convert — Convertir un número entre bases arbitrarias
- bindec — Binario a decimal
- ceil — Redondear fracciones hacia arriba
- cos — Coseno
- cosh — Coseno hiperbólico
- decbin — Decimal a binario
- dechex — Decimal a hexadecimal
- decoct — Decimal a octal
- deg2rad — Convierte el número en grados a su equivalente en radianes
- exp — Calcula la exponencial de e
- expm1 — Devuelve exp(numero)-1, calculado de tal forma que no pierde precisión incluso cuando el valor del numero se aproxima a cero.
- floor — Redondear fracciones hacia abajo
- fmod — Devuelve el residuo de punto flotante (módulo) de la división de los argumentos
- getrandmax — Mostrar el mayor valor aleatorio posible
- hexdec — Hexadecimal a decimal
- hypot — Calcula la longitud de la hipotenusa de un triángulo de ángulo recto
- is_finite — Encuentra si un valor es un número finito legal
- is_infinite — Encuentra si un valor es infinito
- is_nan — Encuentra si un valor no es un número
- lcg_value — Generador lineal congruente combinado
- log10 — Logaritmo en base 10
- log1p — Devuelve log(1 + numero), calculado de tal forma que no pierde precisión incluso cuando el valor del numero se aproxima a cero.
- log — Logaritmo natural
- max — Encontrar el valor más alto
- min — Encontrar el valor más bajo
- mt_getrandmax — Mostrar el mayor valor aleatorio posible
- mt_rand — Genera un mejor número entero aleatorio
- mt_srand — Genera un mejor número entero aleatorio a partir de una semilla
- octdec — Octal a decimal
- pi — Obtener valor de pi
- pow — Expresión exponencial
- rad2deg — Convierte el número en radianes a su equivalente en grados
- rand — Genera un número entero aleatorio
- round — Redondea un float
- sin — Seno
- sinh — Seno hiperbólico
- sqrt — Raíz cuadrada
- srand — Genera un número entero aleatorio a partir de una semilla
- tan — Tangente
- tanh — Tangente hiperbólica
Función abs($numero) esta función retorna el valor absoluto de un numero.
wiew prainprint
/* Funcion abs($numero); */
$numero_a = 1.55;
$numero_b = -500;
abs($numero_a); // 1.55
echo abs($numero_b); // 500
Funciones sin($angulo) , cos($angulo), tan($angulo) retornan el valor del
seno, coseno, tangente del ángulo en radianes. Puedes hacer uso también de la
función deg2rad($grados) que devuelve el ángulo convertido en radianes de un
ángulo en sexagesimales.
<?php
/* Funcion sin($angulo) , cos($angulo), tan($angulo) */
/*
(*) Ten presente que la constante M_PI contiene el valor de PI
Recuerda que PI Radianes equivale a 180º
*/
$grados = deg2rad(45); //45º
sin($grados); // 0.70710 ...
tan($grados); // 1
cos($grados); // 0.70710 ...
Función bindec ( $cadena_numero ), retorna la conversión de un numero
binario en decimal, pero el argumento que se le pasa debe ser una cadena para
no recibir resultados inesperados (recomendación de PHP). Así mismo la función
decbin($decimal) hace el trabajo contrario.
/* Funcion bindec ($cadena_numero); */
/*
(*) Ten presente que el argumento debe ser una cadena
para bindec(..
*/
$binario = '1010101110';
$decimal = 156622;
bindec($binario ); //686
decbin($decimal); //100110001111001110
Las funciones dechex ($decimal) y decoct($decimal); , retornan la conversión
de un número decimal a base hexadecimal y octal respectivamente.
/* Funciones dechex ($decimal); decoct($decimal); */
dechex (10); // a
decoct (8); //10
Las funciones ceil ($decimal) y floor ( $decimal), retorna el siguiente
numero entero y el numero entero anterior respectivamente, ambos redondeándolos
si es necesario.
<?php
/* Funciones ceil($decimal); floor($decimal);*/
$num_a = 100.111;
$num_b = 155.5555;
ceil($num_a); // 101
floor($num_b); //155
/* Funciones ceil($decimal); floor($decimal);*/
$num_a = 100.111;
$num_b = 155.5555;
ceil($num_a); // 101
floor($num_b); //155
Las funciones log10($numero) , pow($numero,$exponente), retornan el valor
del logaritmo natural del argumento y la potencia del argumento al valor del
exponente.
/* Funcion funciones log10($numero); pow($numero,$exponente);*/
$numero = 100;
$exponente = 0.5;
log10($numero); //2
pow($numero,$exponente); //10
Las funciones max(array $argumentos [o] $arg1 ,$arg2, …), mix(array
$argumentos [o] $arg1 ,$arg2, …) retornaran el máximo y mínimo valor de un
conjunto de valores.
/* Funcion max(array $argumentos [o] $arg1 ,$arg2, …),
Funcion mix(array $argumentos [o] $arg1 ,$arg2, …)*/
$conjunto = array(1,56,2,4548,5,31,312,123,12,-65);
max(1,3); //3
min(-1,-2,50); // -2
// con array
max($conjunto); //4548
min($conjunto); //-65
La función rand($min,$max) genera un numero aleatorio entre el rango mínimo
y máximo que fue asignado en los parámetros.
<?php /* Funcion rand($min,$max) */
rand(10,2000); // podria ser 5, 8, 10 , 500 ... etc
Aunque la función ini_set($opcion, $valor) no es netamente matemática,
podemos hacer uso de esta para iniciar (setear) una presicion a nuestro trabajo
con números decimales.
<?php /* Funcion rand($min,$max) */
echo M_PI; //pi con presicion normal
//3.1415926535898
ini_set('precision', 20); // a 20 decimales
echo M_PI; //pi con presicion normal
//3.141592653589793116
Recuerda que estas no son las únicas funciones matemáticas en PHP y que a
partir de estas funciones puedes generar las tuyas propias.
FUNCIONES DE MANEJO
EMPTY
(PHP 4, PHP 5)
empty — Determina
si una variable está vacía
Descripción
Determina si una variable es considerada vacía.
Parámetros
var
La variable que se comprueba
Nota:
empty() sólo
comprueba variables ya que cualquier otra cosa producirá un error de
intérprete. En otras palabras, lo siguiente no funcionará: empty(trim($name)).
empty() es el
opuesto de (boolean) var, excepto que no se
genera ninguna advertencia cuando la variable no está definida.
Valores devueltos
Devuelve
FALSE
si var
tiene un valor no
vacío y diferente de cero.
Las siguientes expresiones son consideradas como vacías:
"" (una cadena
vacía)
0 (0 como un integer)
0.0 (0 como un float)
"0" (0 como un
string)
NULL
FALSE
array() (un array vacío)
var $var; (una variable
declarada, pero sin un valor en una clase)
Historial de cambios
Versión
|
Descripción
|
5.4.0
|
Verificación de índices no numéricos de strings
devuelve
TRUE . |
PHP 5.0.0
|
Los objetos sin propiedades ya no se consideran vacíos.
|
<?php
$var
=
0
;
// Se evalúa a true ya que $var está vacia
if (empty(
$var
)) {
echo
'$var es o bien 0, vacía, o no se encuentra definida en absoluto'
;
}
// Se evalúa como true ya que $var está definida
if (isset(
$var
)) {
echo
'$var está definida a pesar que está vacía'
;
}
?>
ISSETT
(PHP 4, PHP 5)
isset — Determina
si una variable está definida y no es
NULL
Descripción
bool isset (mixed $var[,mixed$
...
] )
Determina si una variable está definida y no es
NULL
.
Si una variable ha sido removida con unseft(), esta ya no
estará definida. isset()
devolverá
FALSE
si prueba una variable
que ha sido definida como NULL
. También tenga
en cuenta que un byte NULL
("\0") no es equivalente a
la constante NULL
de PHP.
Si son pasados varios parámetros, entonces isset() devolverá
TRUE
únicamente si todos los parámetros están
definidos. La evaluación se realiza de izquierda a derecha y se detiene tan
pronto como se encuentre una variable no definida. Parámetros
var
La variable a ser evaluada.
...
Otra variable...
Valores devueltos
Devuelve
TRUE
si var
existe y tiene un valor distinto de NULL
, FALSE
de lo contrario. Historial de cambios
Versión
|
Descripción
|
5.4.0
|
Comprobación de indices no numéricos de strings ahora
retorna
FALSE . |
<?php
$var = '';
// Esto evaluará a TRUE así que el texto se imprimirá.
if (isset($var)) {
echo "Esta variable está definida, así que se imprimirá";
}
// En los siguientes ejemplo usaremos var_dump para imprimir
// el valor devuelto por isset().
$a = "prueba";
$b = "otraprueba";
var_dump(isset($a)); // TRUE
var_dump(isset($a, $b)); // TRUE
unset ($a);
var_dump(isset($a)); // FALSE
var_dump(isset($a, $b)); // FALSE
$foo = NULL;
var_dump(isset($foo)); // FALSE
?>
También trabaja con elementos en matrices:
<?php
$a = array ('test' => 1, 'hello' => NULL, 'pie' => array('a' => 'apple'));
var_dump(isset($a['test'])); // TRUE
var_dump(isset($a['foo'])); // FALSE
var_dump(isset($a['hello'])); // FALSE
// La clave 'helo' es igual a NULL así que no se considera definida
// Si desea comprobar los valores NULL clave, intente:
var_dump(array_key_exists('hello', $a)); // TRUE
// Comprobando valores de arrays con más profunidad
var_dump(isset($a['pie']['a'])); // TRUE
var_dump(isset($a['pie']['b'])); // FALSE
var_dump(isset($a['cake']['a']['b'])); // FALSE
?>
RAND
(PHP 4, PHP 5)
rand — Genera
un número entero aleatorio
Descripción
int rand ( void
)
int rand ( int
$min
, int $max
)
Se si emplea sin los argumentos min y max, rand() devuelve un entero
pseudo-aleatorio entre 0 y getrandmax().
Para obtener un número aleatorio, por ejemplo, entre 5 y 15 (incluidos), use rand(5,15).
Nota: En algunas plataformas (como en Windows),getrandmax(). sólo alcanza hasta 32767. En caso de necesitar un valor mayor
de 32767, se deberá especificar
min
y max
que permiten crear un valor mayor que 32767, o considere
emplear met_rand() en su lugar. MIN
El menor valor a devolver (por defecto: 0)
MAX
El mayor valor a devolver (por defecto:getrandmax())
Valores devueltos
Ejemplos
<?php
echo
rand
() .
"\n"
;
echo
rand
() .
"\n"
;
echo
rand
(
5
,
15
);
?>
El resultado del ejemplo sería algo similar a:
7771
22264
11
que pedoooo?
ResponderEliminar