Escribir menos código puede suponer dos mejoras en nuestra aplicación: código más limpio y fácil de seguir, y código más eficiente.
Usar operadores lógicos (or y and) en vez de if
Si queremos ejecutar una instrucción dependiendo del resultado booleano de una instrucción anterior, como por ejemplo:
$status = fwrite($h, 'texto');
if (!$status) {
log('Error al escribir');
}
Podremos hacerlo de la siguiente manera:
fwrite($h, 'texto') or log('Error al escribir')
Uso del operador ternario
Cuando queremos asignar un valor a una variable dependiendo del resultado de una condición:
$var = $ok? 'Correcto' : 'Falso';
Usar for antes que while
Mientras que con el while serÃa:
$i = 0;
while ($i < 100) {
$var[] = $aux[$i];
$i += 2;
}
Con el for serÃa asÃ:
for ($i = 0; $i < 100; $var[] = $aux[$i+=2]);
Uso de funciones por referencia
Cuando una función nos devuelve un array, no es imposible acceder directamente al contenido del array:
$ext = pathinfo('file.png')['extension'];
// Parse error: syntax error, unexpected '[' in ... on line ...
Para evitar este error podemos crearnos un juego de funciones como estas:
function &r($v) { return $v; }
function &a(&$a, $i) { return $a[$i]; }
Y por último un par de consejos: intenta conocer las funciones de PHP, hay muchas que harán justo lo que tu necesitas, por lo que no tendrás que implementarlo. Antes de escribir más código para que se lea con facilidad, añade un comentario explicativo.
6 PHP coding tips to write less code
VÃa / dzone
Yo prefiero usar la funcion getimagesize
$imgInfo = getimagesize( $img );
echo $imgInfo[‘mime’]; // aqui imprime el tipo de imagen
Cierto, Rene, ni me acordaba de esa posibilidad
companeros yo estoy haciendo un trabajo de tesis busco hacer una comparacion de imagenes. Sinceramente nunca he experimentado con algo asi, alguien me podria ayudar explicandome o dandome documentacion desde el nivel mas basico.
Mi corrreo es cerva20@yahoo.com
Gracias