Curso de PHP

De Wikiversidad

Tabla de contenidos

[editar] Recomendaciones para seguir el curso

  • Saber HTML

Para entender el curso de aprendizaje de PHP, es necesario tener los fundamentos básicos del lenguaje HTML.

  • Editor PHP

Aunque en cualquier editor de texto puedes crear o editar programas en PHP es mas comodo un editor especializado para este tipo de edicion.

  • Servidor, interprete y base de datos (opcional)

Cuando te encuetres aprendiendo algun lenguaje como este, realiza tus pruebas, ejemplos y practicas fuera de la red para evitar difundir informacion importante de tu servidor. Por lo tanto es muy recomenble instalar en vuestro propio ordenador algun servidor como Apache, un Intérprete PHP (que ejecuta tus programas PHP) y un gestor de bases de datos (aunque no es necesario, pero esta es una de las ventajas poderosas de PHP, manipular bases de datos), como MySQL, que te permitiran probar tus programas incrustados en las paginas webs de tu ordenador.

Existe un instalador que te instala los 3 componentes a la vez y que a mi, 
personalmente, es el que más me agrada, es el AppServ, podeis encontrarlo en 
http://www.appservnetwork.com . 
* C:\Appserv\www\ < Aqui colocas tus archivos de prueba.
* http://localhost/archivo.php < Esta es tu URL local, para probar fuera de red.

[editar] Introducción

A diferencia de HTML, el PHP es un lenguaje que se ejecuta en el servidor. Lo que esto quiere decir es que los scripts (códigos) que nosotros creemos no estarán usando nuestro ordenador para ser ejecutados, sino el ordenador en el que están alojados (hosting) y no dependen en nada del ordenador o navegador que estemos usando. Los códigos de php son ejecutados por el motor PHP instalado en el servidor y se devuelve al navegador del usuario el resultado, ya sea una web entera o un simple parrafo.

[editar] Como insertar PHP en páginas HTML

Antes de todo, el formato del archivo no debe ser *.html, sino *.php. Esto sirve para que el servidor sepa por el formato que el archivo está usando ese tipo de lenguaje y pueda ejecutarlo con éxito. Una vez estemos editando el archivo *.php, no podemos insertar el código ahí sin más, debemos abrir las etiquetas adecuadas.

         Etiquetas para código php: <?php CÓDIGO ?>
         Etiquetas para código php abreviadas: <? CÓDIGO ?>

Si no ponemos las etiquetas el servidor creerá que ese código es HTML y no PHP, y eso solo puede ocasionarnos una cosa: problemas. Si añadimos las etiquetas de PHP a las HTML el código nada más empezar deberia ser así:

<html>
<head>
</head>
<body>
<?php
--CODIGO PHP--
?>
</body>
</html>

Nota: La sintaxis <? CODIGO ?> es obsoleta, por lo que se recomienda encarecidamente utilizar únicamente <?php CODIGO ?> La inserción de variables de PHP dentro de un código HTML será válido cuando la directiva "short_open_tag" esté a "on" en nuestro php.ini (es normal encontrarla así en casi cualquier sitio). En caso de que no estuviera tendríamos que poner <?php para abrir el tag, y <?=$variable?> ya no funcionaría

[editar] Comentarios en PHP

Lo primero que voy a explicar es como poner comentarios. Hay varios tipos de comentarios en php. Para el que no lo sepa, un comentario es una o varias lineas de código que no son interpretadas. ¿Y para qué sirven si no son interpretadas? Pues para recordar al programador por qué las puso ahí. Normalmente, las webs no las hace un solo programador, sino varios, ya que ahorra mucho tiempo, y los comentarios son la forma de hacer que el otro programador sepa la razón de cada código que hemos usado.
Hay varias formas bastante básicas de poner comentarios, que son las siguientes:
Comentario de una linea: //
Este tipo de comentario solo hace efecto a una linea, y si hacemos un salto de linea dejará de tener efecto. Para entenderlo mejor, veamos un ejemplo:


<?php
//El código1 ha sido puesto porque hace X función.
CÓDIGO1
CÓDIGO2
CÓDIGO3
?>
De esta forma el comentario no hace efecto a las lineas de los códigos.

Comentario de una linea: #
Este tipo de comentario es exactamente igual al anterior, solo que en vez de // se pone #.

Comentario de varias lineas: /* */
Este tipo de comentario se usa cuando lo que quieres comentar es más extenso que una linea. En vez de poner // o # en cada cambio de linea, se haría esto:

<?php
/* El código1 se pone porque realiza X función
y recoge información para el código2. */
CÓDIGO1
CÓDIGO2
CÓDIGO3
?>
De esta forma el comentario solo haría efecto hasta */, sin afectar al código.

[editar] Hola Mundo

Aquí vamos a aprender otra función, la más básica, la que sirve para mostrar texto en pantalla. La función se usaría así:
<?php
//Se usa la función echo y se pone entre comillas el texto a mostrar
echo "Hola Mundo!";
?>
Como habréis visto, no pongo las etiquetas de HTML(body, head, etc.) porque no es obligatorio a no ser que vayamos a usar codigo javascript o similares. También debeis fijaros en que después de cada función se ha de poner ";" (sin comillas). Esto es para indicar que la función acaba.
Hay dos formas de usar el echo, con comillas dobles (") o con comillas simples ('). La diferencia se nota cuando usamos variables, cosa que veremos más adelante.

En el echo podemos usar códigos para modificar el estilo del texto, pero no los voy a explicar porque ya los deberíais saber si tenéis fundamentos básicos de HTML, así que si no os acordáis, volved y miraros el curso de HTML. Lo que sí que voy a decir es la forma de usarlos:

<?php
echo "<font color='red'>Hola</font> <font color='green'>mundo</font>.";
?>

Otra cosa en que debéis fijaros, cuando las comillas se abren dobles, siempre hay que poner dentro las comillas simples, sino el servidor creerá que ahí cerramos el echo y daría errores. Si usásemos las comillas simples para el echo pues todas las comillas de dentro deberían ser dobles, nada complicado de entender. También si las comillas son dobles podríamos poner \" en vez de comillas simples, pero no es necesario.

Otra cosa a tener en cuenta es que php no tiene en cuenta los saltos de linea si no se los indicas. Lo que quiere decir que si escribimos:

<?php
echo "Hola ";
echo "usuario";
?>

Nos mostrará: Hola usuario. Para marcar el salto de línea hay que poner <br />.

<?php
echo "Hola usuario.<br />";
echo "Adios usuario.";
?>

[editar] Variables

Las variables es algo sencillo de comprender si es bien explicado. Imaginaos un armario con muchos cajones. En cada cajón podemos almacenar numeros, series de palabras o códigos. Se les llama variables porque podemos cambiar lo que almacenamos en ese cajón en cualquier momento. Ahora vamos a ver como se establece una variable:

<?php
$frase = "Hola";
$numero = 7;
echo "Un gato que ves por la calle te dice: $frase<br />";
echo 'El número que va después del 6 es el: '.$numero.' ';
?>

Esto mostraría:
Un gato que ves por la calle te dice: Hola
El número que va después del 6 es el: 7

Puede que no os hayais fijado pero he usado diferentes formas con las comillas y a la hora de crear variables, ahora procedo a explicarlas:
·Cuando vamos a crear una variable que tiene una cadena de palabras, hemos de poner comillas antes y después de la cadena: $frase = "Hola";
·Cuando vamos a crear una variable que contiene una cadena numérica, no hay que poner las comillas, ya que sino tratará la variable como una cadena de palabras: $numero = 7; La diferencia de porqué hemos de poner las variables y porqué no las veremos más adelante.

Las diferentes formas para mostrar las variables son estas:
·Se puede mostrar una variable cuando el ECHO(mostrar cosas en pantalla) está con comillas dobles simplemente poniendo la variable de forma normal, es decir: echo"$variable";
·Si el echo está con comillas simples (' ') se ha de hacer algo más complejo: echo'La variable se pondría así: '.$variable.; Esto sirve para no confundir al echo.
Cuando ponemos comandos HTML dentro de un echo (todos deben ir dentro), tenemos que usar las comillas opuestas a las que hemos usado en el echo, esto quiere decir que:
·Si hemos hecho el echo(que cosas) con comillas simples, las comillas de dentro que usemos serán siempre dobles, y las variables se pondran entre '. y .'
·Si hemos usado comillas dobles, las comillas de dentro que usemos serán simples y las variables irán sin comillas: echo"Hola $nombre";

[editar] Sentencias de control

[editar] Selección Simple

[editar] Selección Múltiple

[editar] Selecciones anidadas

[editar] Bucle while

El bucle while realiza un bloque de código mientras se cumpla la condición condicion, y sólo mientras se cumpla, a diferencia del do (condicion) while. Ejemplo:

while ($i < 3) { echo "Hola
"; $i++; }

para lo que el resultado será:

Hola Hola Hola

Los bucles while se utilizan a menudo realizando cambios en la variable de condicion a fin de extender o recortar el bucle, para ello encontramos sentencias de salida como break; Ejemplo:

while ($i) { // MIENTRAS $i == TRUE if ($seleccionDeUsuaurio) $i = false; }

[editar] Bucle do...while

[editar] Bucle for

[editar] Bucle foreach

[editar] Vectores

Los vectores en PHP son una agrupación de variables las cuales, al no disponer de tipo pueden variar desde valores vacíos a estructuras complejas, pasando por todo tipo de variables.
Los vectores pueden ser definidos de múltiples formas, la forma mas sencilla seria la siguiente:

   $vector = array(1,2);

Esta forma es la forma mas elemental de creación de vectores, creando un vector de dos elementos [1,2]
La estructura vista anteriormente no es estática, es decir podemos seguir trabajando con dicho vector, al cual podremos añadir elementos, o realizar múltiples funciones sobre ellos. Para insertar elementos en un Array tenemos dos maneras:

   $vector[]=3;
   $vector[2]=3;

En la primera de ellas estaríamos apilando un nuevo valor en la posición siguiente del Array y en la segunda forma, asignamos a la posición 2 de Array el valor 3. En php la numeración de los vectores empieza desde 0, por eso la tercera posición es la posición 2. En ambos casos, tenemos el siguiente resultado.
vector=[1,2,3]
También podremos insertar o extraer elementos de un Array utilizando las funciones:

   $elem=array_pop($vector) para extraer el ultimo elemento del Array
   array_push($vector,"4") para insertar un elemento en la ultima posición

[editar] Vectores multidimensionales

Como ya dijimos antes, los Array en PHP no distingen tipos de datos, lo cual mucho mas alla de ser un inconveniente es una gran ventaja, puesto que permite montar grandes estructuras complejas. Entre estas estructuras podemos distinguir los vectores multidimensionales, tambien conocidos como matrices, y su sintaxis seria la siguiente:

   $vector=array(array(1,2),array(3,4,5),array(6,7))
   vector:[1,2  ]
          [3,4,5]
          [6,7  ]

Como podemos ver, la matriz no es completa, es decir todas las filas no tienen los mismos elementos, esta ventaja me permite tratar de forma independiente cada una de las filas, sin tener en cuenta a las otras. Al igual que en los vectores unidimensionales podremos añadir nuevos elementos de la siguiente forma:

   $vector[]=array(2,7,9,1)
   vector:[1,2    ]
          [3,4,5  ]
          [6,7    ]
          [2,7,9,1]
Herramientas personales
Otros idiomas