Hola PHPeros,
Justamente estaba realizando un algoritmo para saber el ancho y alto de una imagen a esto que me picó la curiosidad de saber si en PHPeros había algún tutorial de como usar esta función y al parece no ser así por lo que me animo a hacer un tutorial de dicha función.
¿Como defino esta función?Esta función solo necesita recibir un parámetro cual será el directorio donde está nuestra imagen. Veamos un ejemplo:
<?php
$miSrc = "source/img/imagen.jpg";
$miDato = getimagesize($miSrc);
?>
NOTA: Esta función permite tomar imagenes ajenas a nuestro servidor, tan solo cambiamos el valor de la variable
$miSrc por la URL absoluta de la imagen nueva.
¿Que datos puedo obtener?Con getimagesize() podemos obtener estos
valores:
- Ancho -> Por ejemplo: 560
- Alto -> Por ejemplo: 60
- Tipo imagen -> Por ejemplo: 3 (Ahora explico que es esto)
- Artibutos -> Por ejemplo: width="560" height="60" (Aquí sale con HTML junto con ancho y alto incluidos)
¿Tipos de imagen?Como se puede apreciar en el punto de arriba, en el tipo de imagen pongo un 3. Ahora bien, ¿Que es ese 3?. Bien, este número va asociado a un tipo de imagen por ejemplo GIF pero en este caso el número 3 va asociado con PNG. Os dejo una lista con los valores.
- 1 = GIF, 2 = JPG, 3 = PNG, 4 = SWF, 5 = PSD, 6 = BMP, 7 = TIFF(orden de bytes intel), 8 = TIFF(orden de bytes motorola), 9 = JPC, 10 = JP2, 11 = JPX, 12 = JB2, 13 = SWC, 14 = IFF, 15 = WBMP, 16 = XBM.
Pongamos en practica un ejemploAhora que ya sabemos la teoría, es hora de poner los conocimientos en la práctica.
vamos a ver como con esta simple función podemos explotar todo lo característico de una imagen.
<?php
/* Ponemos una URL, en este caso eligo la URL de la imagen del logo de PHPeros */
$miSrc = "http://www.phperos.net/foro/Themes/default/images/logo.png";
/* Explotamos la imagen y recogemos sus valores */
$miDato = getimagesize($miSrc);
/*
Este array o arreglo contiene los siguientes parametros:
0 -> Ancho
1 -> Alto
2 -> Tipo de la imagen
3 -> Atributos juntos
*/
/* Se muestra en pantalla las caracteristicas de la imagen */
echo '<strong>URL imagen:</strong> '.$miSrc.'<br>
<strong>Ancho de la imagen:</strong> '.$miDato[0].'<br>
<strong>Alto de la imagen:</strong> '.$miDato[1].'<br>
<strong>Tipo de la imagen:</strong> '.$miDato[2].'<br>
<strong>Atributos juntos de la imagen:</strong> '.$miDato[3].'';
?>
Bueno, pues con esto queda concluido este tutorial. Ahora ya sabemos como obtener datos de la imagen a analizar, como veis es muy simple de hacer y puede llegar a ser muy práctico. Desde luego para mi lo es.
Podéis ver el ejemplo en funcionamiento
aquíUn saludo,
Siquillote.