Hola, la clase de hoy vamos a ver algunas funciones muy comunes que ya vienen con php que nos van a resultar muy útiles a la hora de realizar nuestros scripts.
Además veremos las funciones más usadas para manipular arrays, como array_diff, array_search e in_array. ¡No perdamos más tiempo y comencemos con nuestra clase de hoy del Taller de PHP!
Time()
No se si están familiarizados con el termino “unixtime”, por las dudas se los comento de forma informal, prácticamente es una forma de trabajar con fechas y horas pero con un numero entero. Es un número que representa los segundos pasados desde el primero de enero de 1970.
Para trabajar calculando diferencias de fecha, ordenar resultados de la base de datos con campos de fechas, etc, es más práctico, eficiente y liviano trabajar con unixtime en lugar de con la fecha “2008-07-06 17:48:12″, ya que no hay que parsear el string con la fecha.
La función de php time() nos va a devolver la hora unix (unixtime) al momento que la pedimos, por ejemplo, si queremos calcular la hora de la semana pasada para poder traer de la base de datos los últimos artÃculos de la semana podemos calcularlo de la siguiente forma:
<?
$ultimaSemana = time() - ( 60 * 60 * 24 * 7 );
?>
El número que estamos restando luego de time() son los segundos que tiene una semana, es más fácil y practico poner el calculo de segundos por minuto por minutos por hora por horas del dÃa por dÃas de la semana que poner directamente el resultado, ya que de este modo, a la hora de ver el código de nuestro script lo vamos a entender mejor que si estamos viendo el resultado de esa multiplicación directamente.
date()
Nos devuelve un string con el formato de hora que le pasemos. Por ejemplo si ponemos:
$ahora = date(”Y-m-d H:i:s”);
nos va a devolver 2008-07-06 18:42:00.
Si como segundo parámetro le pasan una hora unix, date va a devolver un string de la hora que le pasaron, por ejemplo:
$fecha = date("Y-m-d", 123516512 );
nos va a devolver el dÃa correspondiente a esa hora.
mktime()
Sigue con la tónica de Unixtime, esta vez, nos va a devolver un unixtime de la fecha que le pasemos. La sintaxis es la siguiente:
mktime (hora, minutos, segundos, mes, dia, año );
Por ejemplo, combinando con date, podemos tener datos mas completos de un dÃa del pasado o del futuro:
echo date("F j, Y", mktime(0, 0, 0, 7, 6, 1977));
Y eso me va a mostrar por ejemplo “Julio 6, 1977″, algo un poco más interesante puede ser:
echo date("D j \d\e F \d\e Y", mktime(0, 0, 0, 7, 6, 1977));
y va a mostrar Dom 6 de Julio de 1977 por ejemplo.
Manipulacion de arrays
Algúnas de las funciones más utilizadas y utiles con respecto a arrays son:
array_diff
Muestra las diferencias entre un array y otro:
$a = array( "hola", "chau", "como" );
$b = array( “hola”, “va”, “como” );
$dif = array_diff( $a, $b );
print_r($dif);
mostrara algo asi
Array
(
[1] => “chau”
)
array_search
Buscara un valor especifico en un array y devuelve el Ãndice si lo encuentra, por ejemplo:
$a = array( 0 => "Justi", 1 => "Thor", 2 => "Debi" );
$key = array_search(’Debi’, $a);
La variable $key va a tener valor 2.
in_array
Es similar a la anterior pero en lugar de devolver el indice de la coincidencia, devuelve true o false. Por ejemplo:
if ( in_array( "Justi", $a ) ) {
$cuerso = “php”;
}
Mayúsculas y minúsculas
strtolower(): convierte todo el string en minúsculas.
strtoupper(): pasa todo el string a mayúsculas.
ucfirst(): convierte la primer letra del string en mayúscula.
ucwords(): convierte cada primer letra de cada palabra en mayúscula.
Por ejemplo si tenemos un string:
$titulo = "TALLER DE PHP - FUNCIONES UTILES";
…y queremos modificarlo para que todos los tÃtulos sean iguales, todos los caracteres en minúscula menos la primer letra de la frase, tenemos que pasar primero el string a minúsculas y después hacer que la primer letra sea mayúscula.
$titulo = ucfirst( strtolower( $titulo ) );
Espero que la clase de hoy les haya gustado y los espero la semana que viene.
| << CLASE ANTERIOR |








Jueves, 21 de Agosto de 2008 a las 19.54
disculpenme me gustaria saber cada cuanto o cuando pasan la continuacion del curso…el curso me parese muy interesante, por favor sigan ayudandome. si pueden maandarme algo al respecto a mi correo seria mucho mejor.GRASIAS.
Viernes, 22 de Agosto de 2008 a las 10.29
¡Hola, Daniel!
Los talleres de PHP se publican todos los lunes y puedes suscribirte gratuitamente a nuestro newsletter para recibirlos por email.
Saludos,
Debi.