Metodologia para optimizar codigo
Buenas, como veo que os gustan los códigos de mi compadre, yo voy aportar algo que llevo usando durante algún tiempo cuando quiero generalizar y agilizar el código de mis encargos web.
Quizá algunos no estén de acuerdo con esta metodología, pero es lo que es, una metodología. Como las lentejas, o las tomas o las dejas.
Usado para optimizar secciones
Este código usa las variables $_GET para llamar al fichero *.php para incluirlos con el include.
-
//Carpeta donde estan las secciones!
-
$path = "secciones";
-
$subsec_path = $path."/sub"; //carpetas de subsecciones
-
{
-
@include $subsec_path."/".$_GET['subseccion'].".php";
-
}
-
{
-
if(file_exist($path."/".$_GET['seccion'].".php"))
-
{
-
@include($path."/".$_GET['seccion'].".php");
-
-
}else @include($path."/error/errorseccion.php");
-
-
}else @include($path."benvenida.php");
Codigo Rectificado ( Necesidad de mejora expuesta por Alex )
-
//Carpeta donde estan las secciones!
-
$path = "secciones";
-
$subsec_path = $path."/sub"; //carpetas de subsecciones
-
-
{
-
else
-
{
-
@include $subsec_path."/".$_GET['subseccion'].".php";
-
}
-
}
-
{
-
else
-
{
-
if(file_exist($path."/".$_GET['seccion'].".php"))
-
{
-
include($path."/".$_GET['seccion'].".php");
-
}else include($path."/error/errorseccion.php");
-
}
-
}else include($path."benvenida.php");
-- No pongo una comprobación de las secciones permitidas, porque solo estan permitidas las que hay en la carpeta, logico.
Para hacer que funcione solo tendríamos que usar enlaces como:
http://www.vicao2k3.net/index.php?seccion=galeria
http://www.vicao2k3.net/index.php?seccion=links
http://www.vicao2k3.net/index.php?seccion=galeria&subseccion=favoritos
Así de sencillo. Lo único que obliga tener por cada sección un fichero diferente.
Pero lo tienes todo dividido así no tienes que buscar el código especifico en el index.php, solo dirigirse al fichero con nombre de la sección y listo. Además, hace que el servidor tenga que enviar código menos pesado que si lo hiciéramos todo con condicionales.
Yo lo he usado profesionalmente en 3 sitios webs, con un añadido de SQL, y funcionan perfectamente. Y en el mantenimiento, personalmente me han ido bastante bien. Este código siempre es mejorable.
He aquí un consejillo.
¿Sabes lo que compras?
Hace un par de días recibí un catalogo de Mediamarkt y en la portada aparecía una oferta de Pantalla con tecnología TrueBrite.
Me llamó la atención la palabra "TrueBrite", pensaba que era una innovadora tecnología, pero en google descubrí que tan solo es una tecnología para evitar los reflejos de luz en las pantallas LCD.
No es que sea un concepto nuevo, lo que pasa es cada fabricante le pone un nombre distinto, en este caso es una marca registrada por Toshiba.
En wikipedia podéis ver una lista de los diferentes nombres que le ponen a esta tecnología y sus compañías.
Y eso me ha hecho pensar, que si es licito que las grandes distribuidoras engañen de esta manera a la gente. Porque de esta forma se pueden renovar productos aumentando su precio, solo por el nombre de una tecnología camaleón, o desconocida.
¿Creéis que se debería crear una ley en pro de los consumidores para que no se permitiera esta desinformación?
Funciones PHP útiles para trabajar con strings
haz clic en el nombre de las funciones para ver la documentación y ejemplos:
- strtoupper
convierte una cadena en mayúsculas - strtolower
es la función opuesta a la anterior, convierte una cadena en minúsculas - eregi_replace
reemplaza expresiones regularse sin diferenciar mayúsculas y minúsculas - substr_count
cuenta el número de repeticiones de una subcadena en una cadena - strlen
cuenta el número de caracteres de una cadena - nl2br
convierte un salto de linea (\n) en código html <br /> - substr
permite obtener una parte de una cadena
logotipo, ¿ simple + humilde = confianza ?
lo siento, si últimamente estoy muy vago con el blog, tiene su explicación...
como dije anteriormente, soy bastante cabezota (aclaro, no es sinónimo de tener la cabeza grande)
me explico, cuando me centro en algo, no me gusta mirar hacia otra dirección
actualmente, estoy muy liado con una web que me comprometí hacer a una persona.
desde el principio hasta ahora, hemos discutido bastante sobre el logotipo
no soy especialista en diseño gráfico pero tengo un punto de vista
pienso, que para una web seria (con animo de lucro), lo mejor es que el logotipo sea simple y elegante
en cambio, para el que me ha pedido la web, prefiere que sea simple y humilde
de ahí viene la pregunta, ¿crees que un logotipo simple y humilde puede dar más confianza?
Ejemplo:
Muestra 1
Muestra 2
Yo personalmente, prefiero la segunda opción, no es por que lo haya creado yo jeje
como me toca diseñar la interfaz, ya me dirás en que lugar de la pagina pongo el primer logotipo
php, mostrar errores E_NOTICE
Seguramente la configuración del fichero php.ini de tu servidor oculte los errores E_NOTICE
Según la web de php.net...
En PHP 4 y PHP 5, el valor predeterminado es E_ALL & ~E_NOTICE. Este valor no muestra errores de nivel E_NOTICE.
Al habilitar E_NOTICE durante el desarrollo de software tiene algunos beneficios. Para propósitos de depuración: los mensajes NOTICE le advertirán sobre posibles fallos en su código.
¿Que son los errores E_NOTICE?
Avisos detectados en tiempo de ejecución al utilizar una variable no inicializada
Incorrecto:
- define(TXT_LANG,'Idioma');
- $_GET[url]
Los casos anteriores aunque funcionen, producen un error E_NOTICE, ya que php interpreta TXT_LANG y url como constantes no definidas
Correcto:
- define('TXT_LANG','Idioma');
- $_GET['url']
¿Como mostrar los E_NOTICE?
Para mostrar todos los errores, puedes hacerlo de 2 maneras:
- si tienes permisos para editar el fichero php.ini, abrelo, busca error_reporting y asignarle E_ALL, quedando asi:
error_reporting = E_ALL - si tu servidor no te permite editar el php.ini, puedes introducir al principio del código y después de <?php:
error_reporting(E_ALL);
Post dedicado a:

el gusano ese está mal, nunca acerté ninguna letra… aunque diga que las 3 son la “A” ¬¬