|
En nuestro manual
de páginas dinámicas
vimos el concepto de función. Vimos que la
función podría ser definida como un
conjunto de instrucciones que explotan ciertas variables
para realizar una tarea más o menos elemental.
PHP basa su eficacia principalmente en este tipo
de elemento. Una gran librería que crece
constantemente, a medida que nuevas versiones van
surgiendo, es complementada con las funciones de
propia cosecha dando como resultado un sinfín
de recursos que son aplicados por una simple llamada.
Las funciones integradas en PHP son muy fáciles
de utilizar. Tan sólo hemos de realizar la
llamada de la forma apropiada y especificar los
parámetros y/o variables necesarios para
que la función realice su tarea.
Lo que puede parecer ligeramente más complicado,
pero que resulta sin lugar a dudas muy práctico,
es crear nuestras propias funciones. De una forma
general, podríamos crear nuestras propias
funciones para conectarnos a una base de datos o
crear los encabezados o etiquetas meta de un documento
HTML. Para una aplicación de comercio electrónico
podríamos crear por ejemplo funciones de
cambio de una moneda a otra o de calculo de los
impuestos a añadir al precio de articulo.
En definitiva, es interesante crear funciones para
la mayoría de acciones más o menos
sistemáticas que realizamos en nuestros programas.
Aquí daremos el ejemplo de creación
de una función que, llamada al comienzo de
nuestro script, nos crea el encabezado de nuestro
documento HTML y coloca el titulo que queremos a
la página:
<?
Function hacer_encabezado($titulo)
{
$encabezado="<html>\n<head>\n\t<title>$titulo</title>\n</head>\n";
echo $encabezado;
}
?> |
|
|
Esta función podría ser llamada al principio
de todas nuestras páginas de la siguiente forma:
$titulo="Mi
web";
hacer_encabezado($titulo);
|
|
|
De esta forma automatizamos el proceso de creación
de nuestro documento. Podríamos por ejemplo
incluir en la función otras variables que nos
ayudasen a construir la etiquetas meta y de esta forma,
con un esfuerzo mínimo, crearíamos los
encabezados personalizados para cada una de nuestras
páginas. De este mismo modo nos es posible
crear cierres de documento o formatos diversos para
nuestros textos como si se tratase de hojas de estilo
que tendrían la ventaja de ser reconocidas
por todos los navegadores.
Por supuesto, la función ha de ser definida
dentro del script ya que no se encuentra integrada
en PHP sino que la hemos creado nosotros. Esto en
realidad no pone ninguna pega ya que puede ser incluida
desde un archivo en el que iremos almacenando las
definiciones de las funciones que vayamos creando
o recopilando.
Estos archivos en los que se guardan las funciones
se llaman librerías. La forma de incluirlos
en nuestro script es a partir de la instrucción
require o include:
require("libreria.php")
o include("libreria.php")
|
|
|
|
En resumen, la cosa quedaría así:
Tendríamos un archivo libreria.php como sigue
<?
//función de encabezado
y colocación del titulo
Function hacer_encabezado($titulo)
{
$encabezado="<html>\n<head>\n\t<title>$titulo</title>\n</head>\n";
echo $encabezado;
}
?> |
|
|
Por otra parte tendríamos nuestro script principal
página.php (por ejemplo):
<?
include("libreria.php");
$titulo="Mi Web";
hacer_encabezado($titulo);
?>
<body>
El cuerpo de la página
</body>
</html> |
|
Ejecutar
este Script
Echar un vistazo al codigo
fuente del navegador |
Podemos meter todas las funciones que vayamos encontrando
dentro de un mismo archivo pero resulta muchísimo
más ventajoso ir clasificándolas en
distintos archivos por temática: Funciones
de conexión a bases de datos, funciones comerciales,
funciones generales, etc. Esto nos ayudara a poder
localizarlas antes para corregirlas o modificarlas,
nos permite también cargar únicamente
el tipo de función que necesitamos para el
script sin recargar éste en exceso además
de permitirnos utilizar un determinado tipo de librería
para varios sitios webs distintos.
También puede resultar muy práctico
el utilizar una nomenclatura sistemática
a la hora de nombrarlas: Las funciones comerciales
podrían ser llamadas com_loquesea, las de
bases de datos bd_loquesea, las de tratamiento de
archivos file_loquesea. Esto nos permitirá
reconocerlas enseguida cuando leamos el script sin
tener que recurrir a nuestra oxidada memoria para
descubrir su utilidad.
No obstante, antes de lanzarnos a crear nuestra
propia función, merece la pena echar un vistazo
a la documentación
para ver si dicha función ya existe o podemos
aprovecharnos de alguna de las existentes para aligerar
nuestro trabajo. Así, por ejemplo, existe
una función llamada header que crea un encabezado
HTML configurable lo cual nos evita tener que crearla
nosotros mismos.
Como puede verse, la tarea del programador puede
en algunos casos parecerse a la de un coleccionista.
Hay que ser paciente y metódico y al final,
a base de trabajo propio, intercambio y tiempo podemos
llegar poseer nuestro pequeño tesoro.
|