BULMA: Tutorial de PHP y librerías de Bulma
Bisoños Usuarios de Linux de Mallorca y Alrededores | Bergantells Usuaris de Linux de Mallorca i Afegitons
Tutorial de PHP y librerías de Bulma
Por Antonio Tejada Lacaci, Wildfred ()
Creado el 26/01/2000 00:00 y modificado por última vez el 26/01/2000 00:00
Vuestro querido webmíster os presenta un tutorial de iniciación al PHP y a las librerías de desarrollo creadas para el
sitio web de Bulma.
Introducción al PHP y a las librerías de Bulma
Antonio Tejada Lacaci
[email protected]
v0.3, 26 de Enero 1999
Introducción al lenguaje interpretado PHP de generación dinámica de páginas web y a las librerías desarrolladas para
el sitio web de Bulma.
1. Introducción al PHP
PHP es un lenguaje interpretado que sirve principalmente para realizar páginas html dinámicas, aunque sus autores
aseguran emplearlo incluso para hacer shell−scripts, ya que hay intérpetes php en línea de comandos.
A pesar del ímpetu de sus desarrolladores, aquí nos centraremos especialmente en la generación de páginas dinámicas
con php (versión 3), apache y el módulo mod_php.
PHP es muy parecido al C, si ya sabes C, se puede decir que ya sabes el 90% del lenguaje PHP, únicamente se
diferencian en que:
•
•
PHP no es case sensitive (no distingue mayúsculas de minúsculas), salvo bugs en el tratamiento de objetos.
en PHP no se declaran las variables y no tienen un tipo fijo, sino que una misma variable puede almacenar a lo
largo de su vida valores de todo tipo (números, cadenas...).
1.1 PHP y HTML
Para escribir código PHP dentro de una página html, tenemos varias alternativas:
•
•
•
Incluir el código entre <? y ?>
Incluir el código entre <?PHP y ?>
Incluir el código entre bloques <SCRIPT LANGUAGE="php"> y </SCRIPT>
El resultado de la salida estándar de ese código será escrito en esa misma posición de la página html.
Ejemplo:
<HTML>
<BODY>
<?PHP
echo("¡Hola Mundo!<BR>");
?>
</BODY>
</HTML>
1/16
BULMA: Tutorial de PHP y librerías de Bulma
La página anterior, si la salvamos como ejemplo.phtml y la cargamos con el navegador, produce como resultado
una página HTML con el texto "Hola Mundo". Huelga decir que para que funcione, es necesario tener instalado un
servidor web con soporte para PHP y asociar la interpretación de PHP a la extensión phtml.
En el proyecto web de Bulma tienes información de cómo instalar todo ello, incluyendo el código fuente del web, los
datos de la base de datos y scripts para la instalación del web de bulma en cualquier ordenador.
En los sucesivos ejemplos, obviaremos las marcas <?PHP .. ?>, HTML y BODY
1.2 Comentarios
Los comentarios en PHP se escriben:
•
•
Con // o # para comentarios de una sóla línea.
Entre /* y */ para comentarios de una o más líneas.
Ejemplo:
/* Título: Mi Primera página PHP
Autor: Yo
*/
// Saludamos
echo("¡Hola Mundo!<BR>");
Produce la misma salida que el ejemplo anterior.
1.3 Variables
Todas las variables en PHP empiezan con el caracter dólar "$".
Declaración
Las variables se declaran simplemente inicializándolas:
$strCadena = "Hola Mundo";
echo($strCadena);
Si intentamos acceder a una variable no inicializada, PHP se quejará. Para evitar ello, existe la función
error_reporting(mask).
Tipos
Los tipos básicos de PHP son Integer, Double, String, Array y Object. Las variables booleanas no existen como tales,
sino que cualquier valor numérico distinto de 0 o cualquier cadena no vacía se considera TRUE
Las variables PHP no tienen un tipo fijo, dependiendo de la última asignación realizada, tienen uno u otro tipo. La
función gettype(nombrevar) permite obtener el tipo de esa variable en forma de cadena:
$variable = "Una cadena";
echo(gettype($variable));
$variable = 0;
echo(gettype($variable));
El ejemplo anterior escribe "String" e "Integer" por pantalla.
Las funciones Is_Double($varname), Is_Array($varname), Is_String($varname) y
Is_Object($varname) también nos permiten saber el tipo de una variable.
2/16
BULMA: Tutorial de PHP y librerías de Bulma
Cadenas
Las cadenas en PHP se especifican rodeadas por comillas simples o por comillas dobles:
$strCadena1 = "Hola Mundo<BR>";
echo($strCadena1);
$strCadena2 = 'Hola Inmundo<BR>';
echo($strCadena2);
Hay un matiz de diferencia entre una y otra, que podemos comprobar con este ejemplo:
$strMessage = "Hola Mundo";
$strMsgInABottle = "$strMessage<BR>";
echo($strMsgInABottle);
$strMsgInABottle = '$strMessage<BR>';
echo($strMsgInABottle);
Produce una página con el texto
Hola mundo
$strMessage
Es decir, cuando usamos comillas dobles, las expresiones del estilo $varname se sustituyen por el valor de la variable
$varname, mientras que cuando usamos comillas simples, la cadena no se evalúa y se deja como está.
El operador para concatenar cadenas es el punto ".":
$strCadena = "Hola";
$strCadena = $strCadena . "Mundo";
echo($strCadena);
Las comillas pueden abarcar más de una línea sin ningún problema:
$strConsulta = '
SELECT *
FROM
bul_tbl_noticias
WHERE
nombre_autor = \'Alberto\';
';
Como vemos, podemos escapar las comillas con la combinación \'. De la misma manera, \n, \t y otros tienen el
mismo significado que en C.
Arrays
Los arrays en PHP son bastante potentes y flexibles:
$arrValores[0] = 1;
$arrValores[1] = "Una cadena";
echo("En \$arrValores[0] está $arrValores[0] y en " .
"\$arrValores[1] está $arrValores[1]<BR>");
El no poner el subíndice del elemento, hace que el valor asignado se asigne a las siguiente posición libre del array. Los
arrays en PHP comienzan en la posición 0, por lo que el anterior código podría escribirse más fácilmente así:
$arrValores[] = 1;
$arrValores[] = "Una cadena";
echo("En \$arrValores[0] está $arrValores[0] y en " .
"\$arrValores[1] está $arrValores[1]<BR>");
Otra forma de crear arrays es mediante la construcción Array():
$arrValores = Array(1, "Una cadena");
3/16
BULMA: Tutorial de PHP y librerías de Bulma
echo("En \$arrValores[0] está $arrValores[0] y en " .
"\$arrValores[1] está $arrValores[1]<BR>");
Una forma muy conveniente de direccionar elementos de un array es asociativamente. En el caso de los arrays
asociativos, en vez de accederse por índice, se accede por clave o key (las claves sí son case sensitive, no es lo mismo
$arrValores["a"] que $arrValores["A"], no es lo mismo):
$arrValores["nombre"] = "Tancredo";
$arrValores["Apellidos"] = array("Gómez", "Jiménez");
echo("En \$arrValores[\"nombre\"] está $arrValores[nombre] y " .
"en \$arrValores[\"Apellidos\"] está " .
$arrValores["Apellidos"][0] . " y " .
$arrValores[Apellidos][1] . "<BR>");
Como vemos, manejar arrays multidimensionales es trivial en PHP, basta con añadir los corchetes y el subíndice
deseado.
La construcción Array() también puede usarse con arrays asociativos:
$arrValores=array(
"nombre" => "Tancredo",
"Apellidos" => array("Gómez", "Jiménez")
);
La construcción List() nos permite asignar los valores de un array a una serie de variables de una sola vez:
$arrValores=Array(1, "Una cadena", 1.2);
List($nNumber, $strCadena, $fNumber) = $arrValores;
echo("\$nNumber vale $nNumber, \$strCadena vale " .
"'$strCadena' y \$fNumber vale $fNumber");
saca como resultado:
$nNumber vale 1, $strCadena vale 'Una cadena' y $fNumber vale 1.2
Conversiones
Para convertir una variable de un tipo a otro se emplea el casting mediante paréntesis:
$strVariable = "5";
$valor = (integer) $strVariable;
$valor contiene el valor numérico de la variable $strVariable.
También podemos emplear la función SetType($varname, "vartype") para forzar que la variable $varname
sea del tipo vartype.
De todas formas, PHP es bastante consecuente en cuanto a los tipos, de manera que si sumamos un número a una
cadena, esa cadena se convierte en un número:
$strCadena="5";
echo('$strCadena es de tipo ' . GetType($strCadena) .
" y vale $strCadena<BR>");
$strCadena = $strCadena + 5;
echo('$strCadena es de tipo ' . GetType($strCadena) .
" y vale $strCadena<BR>");
produce como resultado
$strCadena es de tipo string y vale 5
$strCadena es de tipo integer y vale 10
En caso de que concatenemos una cadena con un número, PHP realiza la conversión del número a cadena
4/16
BULMA: Tutorial de PHP y librerías de Bulma
automáticamente:
echo("El número es " . 5 . "<BR>");
Produce la salida esperada
El número es 5
Variables predeclaradas HTTP
PHP tiene toda una serie de variables predeclaradas que tienen que ver con HTML, como:
•
•
•
•
•
$PHP_AUTH_USER: Usuario de la autenticación.
$PHP_AUTH_TYPE: Tipo de autorización.
$PHP_AUTH_PW: Contraseña con la que se autenticó el usuario.
$HTTP_POST_VARS: Array con las variables de un form pasadas por el método POST.
$HTTP_PUT_VARS: Array con las variables de un form pasadas por el método PUT.
Aparte de los arrays $HTTP_PUT_VARS y $HTTP_POST_VARS, podemos acceder a las variables provenientes de
forms HTML como $nombrevariable, supongamos el siguiente form:
<HTML>
<BODY>
<FORM ACTION="tratar_form.phtml">
<INPUT TYPE="TEXT" NAME="Nombre">
<INPUT TYPE="TEXT" NAME="Apellido[0]">
<INPUT TYPE="TEXT" NAME="Apellido[1]">
<INPUT TYPE="SUBMIT" NAME="btnAceptar" VALUE="Aceptar">
</FORM>
</BODY>
</HTML>
Mientras que en la página tratar_form.phtml podemos acceder a las variables del form con:
Echo("Nombre: $Nombre <BR>
Apellido1: $Apellido[0] <BR>
Apellido2: $Apellido[1] <BR>
");
Comprobación de declaración
En ocasiones es necesario saber si una variable ha sido inicializada ya (sobre todo si proviene de un form html, por
ejemplo), para ello tenemos la función IsSet($variable) que nos permite saber si esa variable fue ya inicializada.
Esta función debe ser usada conjuntamente con un error_reporting(~8) para que el intérprete no capture el error
de intento de acceso a variable no inicializada.
1.4 Constantes
Las constantes en PHP son literales que no comienzan por "$" y que se inicializan con la construcción
define(nomconst):
define("MAX_CLIENTS", 25);
Echo(MAX_CLIENTS);
Las
Comentarios de: BULMA: Tutorial de PHP y librerías de Bulma (1)