Manual de PHP 7
Manual de PHP 7
Iniciación a PHP 7
1.1) Introducción a PHP 7
1.2) Instalación de Software necesario para PHP 7
1.3) Nuestro primer PHP ¡Hola mundo! y algo más
1.4) Comentarios dentro de código PHP 7
1.5) Variables en PHP 7
1.6) Variables reservadas en PHP 7
1.7) Cómo concatenar en PHP 7
1.1) Introducción a PHP 7
PHP es un lenguaje de programación creado en el año 1995 de uso general de
código del lado del servidor originalmente diseñado para el desarrollo web de
contenido dinámico. Fue uno de los primeros lenguajes de programación del lado
del servidor que se podían incorporar directamente en el documento HTML en
lugar de llamar a un archivo externo que procese los datos.
Con las primeras 2 versiones de PHP, PHP 3 y PHP 4, se había conseguido una
plataforma potente y estable para la programación de páginas del lado del
servidor. Estas versiones han servido de mucha ayuda para la comunidad de
desarrolladores, haciendo posible que PHP sea el lenguaje más utilizado en la
web para la realización de páginas avanzadas.
Sin embargo, todavía existían puntos negros en el desarrollo PHP que se han
tratado de solucionar con la versión 5, aspectos que se echaron en falta en la
versión 4, casi desde el día de su lanzamiento. Nos referimos principalmente a
la programación orientada a objetos (POO) que, a pesar de que estaba
soportada a partir de PHP 3, sólo implementaba una parte muy pequeña de las
características de este tipo de programación.
Nota: La orientación a objetos es una manera de programar que trata de modelar los
procesos de programación de una manera cercana a la realidad: tratando a cada
componente de un programa como un objeto con sus características y funcionalidades.
¿Qué es XAMPP?
XAMPP es una distribución de Apache completamente gratuita y fácil de instalar
que contiene el servidor web HTTP Apache, Base de Datos
MySQL, PHP y Perl. El paquete de instalación de XAMPP ha sido diseñado
para ser increíblemente fácil de instalar y usar, es muy potente, tanto para poder
desarrollar, probar, hasta para montar un servidor de producción, solo que ésto
último no lo recomiendo (en lo personal).
A continuación instalaremos XAAMP versión 5.6.8 para Windows 7 32 bits. La
liga para su descarga está aquí:
XAMPP versión 5.6.8 para Windows
https://www.apachefriends.org/xampp-files/5.6.8/xampp-win32-5.6.8-0-VC11-
installer.exe
Una vez descargado, ejecutaremos el instalador xampp-win32-5.6.8-0-VC11-
installer.exe.
?>
Vamos abrir nuestro explorador y entraremos
a http://localhost/mis_apps/capitulo_1/hola.php debemos ver lo siguiente:
Siempre que vayamos a escribir código PHP 7 debemos comenzar con " <?php"
y terminar con "?>", echo es una función PHP propia para imprimir en pantalla
lo que siga entre " ". Si todo resultó bien, ¡felicidades!. Creaste tu primer código
PHP 7 dinámico.
La ventaja que tiene PHP 7 sobre otros lenguajes de programación que se
ejecutan en el servidor (como podrían ser los script CGI Perl), es que nos permite
intercalar las sentencias PHP 7 en las paginas HTML, es un concepto algo
complicado de entender si no se ha visto nunca como funciona unas paginas
PHP, ASP, .NET, etc.
Vamos a ver el siguiente ejemplo para comprenderlo mejor. En otro archivo,
llamado hola_bucle.php escribiremos lo siguiente:
<html>
<head>
<title>Nuestro primer ejemplo en PHP 7</title>
</head>
<body>
<?php
</body>
</html>
El código PHP ejecutado tiene dos partes: la primera imprime "¡Hola mundo!" y
la segunda es un bucle que se ejecuta 10 veces de 0 a 9, por cada vez que se
ejecuta se escribe una línea, la variable $i contiene el número de línea que se
está escribiendo.
No importa si no entiende muy bien el programa este ejemplo solo es para ilustrar
como se intercala el código HTML y el código PHP.
<html>
<head>
<title>Ejemplo de comentarios en PHP 7</title>
</head>
<body>
<?php
?>
</body>
</html>
<html>
<head>
<title>Ejemplo de comentarios en PHP 7</title>
</head>
<body>
<?php
?>
</body>
</html>
3.- Con barra y asterisco para apertura y asterisco y barra para cierre /* */
<html>
<head>
<title>Ejemplo de comentarios en PHP 7</title>
</head>
<body>
<?php
/*
¡Este es el segundo tipo de comentario!.
Podemos agregar tanto texto como querramos cambiando de renglón.
Sin importar que escribamos
Bajando de renglones
Hasta su cierre
*/
?>
</body>
</html>
Usar comentarios dentro de código PHP 7 nos es muy útil ya que podemos dejar
descripciones o lo que deseemos.
Tampoco tienen tipos, es decir que una misma variable puede contener un
número y luego puede contener carácteres.
<body>
<?php
$a = 1;
$b = "3.34";
echo $a."<br>".$b."<br>".$c;
?>
</body>
</html>
Un punto importante a resaltar, es que si vamos a utilizar una variable que está
especificada afuera de alguna función que desarrollemos tenemos que
anteponer global. Veamos un ejemplo, crearemos un archivo
llamado variables_funcion.php:
<html>
<head>
<title>Ejemplo de tipos de variables en PHP 7</title>
</head>
<body>
<?php
$a = 1;
$b = "3.34";
function ejemploVariables()
{
echo $a."<br>".$b."<br>".$c;
// Ejecutamos la función
ejemploVariables();
?>
</body>
</html>
También, podemos almacenar información en varibales mediante matrices (las
matrices las veremos más adelante), veamos un ejemplo, crearemos un archivo
llamado variables_array.php:
<html>
<head>
<title>Ejemplo de tipos de variables en PHP 7</title>
</head>
<body>
<?php
$nuestraVariable = array();
// Asignemos valores
// Recorramos la matriz
print_r($nuestraVariable);
</body>
</html>
Con el ejemplo anterior, vemos que también podemos asignarle valores a una
variable matriz.
Variable Valor
$_COOKIE Variable con la cual podemos crear, accesar, editar o destruir Cookies.
$_REQUEST Es una variable de array asociativo que por defecto contiene el contenido de $_GET, $_POS
$_SERVER
La varibale $_SERVER nos devolverá en forma de array (matriz) información de
servidor, rutas, conexiones, información del cliente y distintos headers recibidos.
Veamos un ejemplo, dentro de nuestra
carpeta "mis_apps\capitulo_1" crearemos un archivo
llamado variables_server.php con el siguiente código:
<html>
<head>
<title>Ejemplo de variable reservada en PHP 7</title>
</head>
<body>
<pre>
<?php
print_r($_SERVER);
?>
</pre >
</body>
</html>
$_GET
La varibale $_GET nos devolverá en forma de array (matriz) información de
varibales enviadas a través del paramatro HTTP GET, es decir, en la dirección
de solicitud, variables y asiganciones con & = (archivo.php?variable-
1=valor1&varibale-2=valor2&varibale-3=valor3). Veamos un ejemplo, dentro de
nuestra carpeta "mis_apps\capitulo_1" crearemos un archivo
llamado variables_get.php con el siguiente código y lo ejecutaremos con los
siguientes parametros:
http://localhost/mis_apps/capitulo_1/variables_get.php?variable-
1=valor1&varibale-2=valor2&varibale-3=valor3
<html>
<head>
<title>Ejemplo de variable reservada en PHP 7</title>
</head>
<body>
<pre>
<?php
print_r($_GET);
?>
</pre >
</body>
</html>
$_POST
La varibale $_POST nos devolverá en forma de array (matriz) información de
varibales enviadas a través del paramatro HTTP POST. Veamos un ejemplo,
dentro de nuestra carpeta "mis_apps\capitulo_1" crearemos un archivo
llamado variables_post.php con el siguiente código:
<html>
<head>
<title>Ejemplo de variable reservada en PHP 7</title>
</head>
<body>
<form method="post">
</form>
<pre>
<?php
if($_POST)
{
print_r($_POST);
}
?>
</pre >
</body>
</html>
$_COOKIE
La varibale $_COOKIE nos devolverá en forma de array (matriz) información de
cookies guardadas en nuestro cliente. Veamos un ejemplo, dentro de nuestra
carpeta "mis_apps\capitulo_1" crearemos un archivo
llamado variables_cookie.php con el siguiente código:
<?php
setcookie("Valor_1", "1");
setcookie("Valor_2", "2");
setcookie("Valor_3", "3");
?>
<html>
<head>
<title>Ejemplo de variable reservada en PHP 7</title>
</head>
<body>
<pre>
<?php
print_r($_COOKIE);
?>
</pre >
</body>
</html>
$_FILES
La varibale $_FILES nos devolverá en forma de array (matriz) información de
archivos que hayan llegado al servidor a través del protocolo HTTP POST.
Veamos un ejemplo, dentro de nuestra
carpeta "mis_apps\capitulo_1" crearemos un archivo
llamado variables_file.php con el siguiente código:
<html>
<head>
<title>Ejemplo de variable reservada en PHP 7</title>
</head>
<body>
</form>
<pre>
<?php
if($_FILES)
{
print_r($_FILES);
}
?>
</pre >
</body>
</html>
$_REQUEST
La varibale $_REQUEST nos devolverá en forma de array (matriz) información
en array asociativo con el contenido de las varibles $_GET, $_POST y
$_COOKIE. Veamos un ejemplo, dentro de nuestra
carpeta "mis_apps\capitulo_1" crearemos un archivo
llamado variables_request.php con el siguiente código:
<html>
<head>
<title>Ejemplo de variable reservada en PHP 7</title>
</head>
<body>
<pre>
<?php
print_r($_REQUEST);
?>
</pre >
</body>
</html>
$_SESSION
La varibale $_SESSION nos devolverá en forma de array (matriz) información de
variables establecidad en sesión, estando accesibles en cualquier parte de
nuestra aplicación sin necesidad de requerir las definiciones. Veamos un
ejemplo, dentro de nuestra carpeta "mis_apps\capitulo_1" crearemos un
archivo llamado variables_session.php con el siguiente código:
<?php
session_start();
<html>
<head>
<title>Ejemplo de variable reservada en PHP 7</title>
</head>
<body>
<pre>
<?php
print_r($_SESSION);
?>
</pre >
</body>
</html>
1.7) Cómo concatenar en PHP 7
En PHP 7 al igual que en mucho lenguajes de programación existe la
concatenación, pero ¿qué es?. La concatenación es pegar información que
venga en una varibale o en una función. Veamos un ejemplo, dentro de nuestra
carpeta "mis_apps\capitulo_1"crearemos un archivo
llamado concatenacion.php con el siguiente código:
<html>
<head>
<title>Ejemplo de concatenación en PHP 7</title>
</head>
<body>
<?php
$ciudad = "Bogotá";
$pais = "Colombia";
$edad = "30";
?>
</body>
</html>
2) Operadores en PHP 7
En el segundo capítulo de nuestro Tutorial PHP 7 veremos los operadores
artimeticos, de comparación y lógicos.
Operadores en PHP 7
2.1) Operadores aritméticos en PHP 7
2.2) Operadores de comparación PHP 7
2.3) Operadores lógicos en PHP 7
2.1) Operadores aritméticos en PHP 7
Los operadores de PHP 7 son muy parecidos a los lenguajes de programación
como C, C++, JavaScript o Phyton, si conoces estos lenguajes te resultaran muy
familiares y fáciles de reconocer. Si no, no te preocupes, vamos aprenderlos.
Estos son los operadores que se pueden aplicar a las variables y constantes
numéricas.
<body>
<?php
$a = 8;
$b = 3;
echo $a + $b."<br>";
echo $a - $b."<br>";
echo $a * $b."<br>";
echo $a / $b."<br>";
echo $a % $b,"<br>";
$a++;
echo $a."<br>";
$b--;
echo $b."<br>";
?>
</body>
</html>
== Igual $a == $b $a es igual $b
!= Distinto $a != $b $a es distinto $b
<body>
$a = 8;
$b = 3;
$c = 5;
if($a == $b)
{
echo "$a es igual a $b <br>";
}
else
{
echo "$a no es igual a $b <br>";
}
if($a != $b)
{
echo "$a no es igual a $b <br>";
}
else
{
echo "$a es igual a $b <br>";
}
?>
</body>
</html>
<body>
<h2>Ejemplo de operadores lógicos</h2>
<?php
$a = 8;
$b = 3;
$c = 9;
if($a==8 || $c==5)
{
echo "$a puede ser igual a 8 y $c puede ser igual a 5 <br>";
}
else
{
echo "Alguna condición no cumplió la validación <br>";
}
if($a==8 or $c==5)
{
echo "$a puede ser igual a 8 y $c puede ser igual a 5 <br>";
}
else
{
echo "Alguna condición no cumplió la validación <br>";
}
if($a!= 4)
{
echo "$a no es igual a 4<br>";
}
else
{
echo "Alguna condición no cumplió la validación <br>";
}
?>
</body>
</html>
3) Instrucciones en PHP 7
En el tercer de nuestro Tutorial PHP 7 veremos qué son las condicionales, los
bucles, ¿qué es la función printf y el manejo de cadenas.
Instrucciones en PHP 7
3.1) Condicionales en PHP 7
3.2) Qué son los bucles PHP 7
3.3) Salida función printf PHP 7
3.4) Manejo de cadenas PHP 7
3.1) Condicionales en PHP 7
Las sentencias condicionales nos permiten ejecutar o no, determinadas
instrucciones dependiendo del resultado a evaluar sobre una condición. Las más
frecuentes son las siguientes instrucciones:
if
if / else
if / elseif / else
switch
Veamos algunos ejemplos:
if
La condicional if se emplea para evaluar una comparación siempre que sea
verdadera, veamos este pseudocódigo:
<?php
if (condición)
{
Sentencias a ejecutar cuando la condición es cierta.
}
?>
<body>
<h2>Ejemplo de condicionales</h2>
<?php
$a = 15;
// Equivale a Si $a es igual a 15
if ($a == 15)
{
echo "$a vale 15";
}
?>
</body>
</html>
if / else
La condicional if / else se emplea para evaluar una comparación siempre que
sea verdadera y sino, se ejecutará lo que exista en el else. Veamos este
pseudocódigo:
<?php
if (condición)
{
Sentencias a ejecutar cuando la condición es cierta.
}
else
{
Sentecias a ejecutar cuando la condición es falsa.
}
?>
<body>
<h2>Ejemplo de condicionales</h2>
<?php
$a = 15;
if ($a == 13)
{
echo "$a vale 13";
}
else
{
echo "$a no vale 13";
}
?>
</body>
</html>
if / elseif / else
La condicional if / elseif / else se emplea para evaluar varias comparaciones
siempre que sea verdadera y sino, se ejecutará lo que exista en el else. Veamos
este pseudocódigo:
<?php
if (condición)
{
Sentencias a ejecutar cuando la condición es cierta.
}
elseif (condición)
{
Sentencias a ejecutar cuando la condición es cierta.
}
elseif (condición)
{
Sentencias a ejecutar cuando la condición es cierta.
}
elseif (condición)
{
Sentencias a ejecutar cuando la condición es cierta.
}
else
{
Sentecias a ejecutar cuando la condición es falsa.
}
?>
<body>
<h2>Ejemplo de condicionales</h2>
<?php
$a = 15;
if ($a == 13)
{
echo "$a vale 13";
}
elseif ($a == 14)
{
echo "$a vale 14";
}
elseif ($a == 15)
{
echo "$a vale 15";
}
else
{
echo "$a no vale 13, 14 o 15";
}
?>
</body>
</html>
switch
La condicional switch se emplea para evaluar varias comparaciones siempre
que sea verdadera y sino, se ejecutará lo que exista en el else. Veamos este
pseudocódigo:
<?php
switch (valor)
{
case valor:
Acción a realizar si se encontró el valor.
break;
case valor:
Acción a realizar si se encontró el valor.
break;
case valor:
Acción a realizar si se encontró el valor.
break;
case valor:
Acción a realizar si se encontró el valor.
break;
case valor:
Acción a realizar si se encontró el valor.
break;
default:
Acción a realizar sino se encontró el valor.
?>
<body>
<h2>Ejemplo de condicionales</h2>
<?php
$a = 5;
switch ($a)
{
case 0:
echo "$a es igual a 0";
break;
case 1:
echo "$a es igual a 1";
break;
case 2:
echo "$a es igual a 2";
break;
case 3:
echo "$a es igual a 3";
break;
case 4:
echo "$a es igual a 4";
break;
case 5:
echo "$a es igual a 5";
break;
default:
echo "$a no es igual a 0, 1, 3, 4 ni 5";
}
?>
</body>
</html>
While
Do… While
For
Foreach
While
Su funcionamiento es sencillo, ya que primero se evalúa que la condición sea
verdadera y luego se ejecuta, hasta que la condición pase a ser falsa; una
sentencia while (Español: Mientras) puede que no se ejecute ni siquiera una vez,
si su condición es inicialmente falsa. Veamos un ejemplo, dentro de nuestra
carpeta "mis_apps\capitulo_3" crearemos un archivo
llamado bucle_while.php con el siguiente código:
<html>
<head>
<title>Ejemplo de bucle en PHP 7</title>
</head>
<body>
<?php
$i = 1;
while($i <= 5)
{
echo $i."<br>";
$i += 1;
</body>
</html>
Do… While
Su uso es similar a while, pero aquí, las sentencias que siguen al do (Español:
Hacer) se ejecutan por lo menos una vez y se comprueba la condición luego de
la primera iteración; así, si es verdadera la condición se repite por segunda vez,
si es falsa se continúa con las sentencias inmediatamente después de la
instrucción while. Tiene sólo una sintáxis. Veamos un ejemplo, dentro de nuestra
carpeta "mis_apps\capitulo_3" crearemos un archivo
llamado bucle_do_while.php con el siguiente código:
<html>
<head>
<title>Ejemplo de bucle en PHP 7</title>
</head>
<body>
<?php
$i = 5;
$n = 1;
do
{
$n = $n * $i;
$i -= 1;
}
</body>
</html>
For
Los bucles for (Español: Para) son los más complejos en PHP (y en otros
lenguajes de programación). Veamos un ejemplo, dentro de nuestra
carpeta "mis_apps\capitulo_3" crearemos un archivo
llamado bucle_for.php con el siguiente código:
<html>
<head>
<title>Ejemplo de bucle en PHP 7</title>
</head>
<body>
<?php
?>
</body>
</html>
Foreach
Introducido en PHP 4 es una solución fácil para trabajar con arreglos, muy
semejante a Perl y otros lenguajes, funciona solo en arreglos y presentara un
error al utilizar una variable con diferente tipo o no inicializada. Existen dos
sintaxis la segunda opción en menor pero tiene mejor uso que la primera.
Veamos un ejemplo, dentro de nuestra
carpeta "mis_apps\capitulo_3" crearemos un archivo
llamado bucle_foreach.php con el siguiente código:
<html>
<head>
<title>Ejemplo de bucle en PHP 7</title>
</head>
<body>
<?php
$a = array(1, 2, 3, 17);
?>
</body>
</html>
<?php
printf(cadena formato, variable1, variable2, etc, etc);
?>
La cadena de formateo indica cómo se han de representar las valores que
posteriormente le indicaremos. La principal ventaja es que además de poder
formatear los valores de salida, nos permite intercalar texto entre ellos. Veamos
un ejemplo, dentro de nuestra carpeta "mis_apps\capitulo_3" crearemos un
archivo llamado salida_printf.php con el siguiente código:
<html>
<head>
<title>Ejemplo de printf en PHP 7</title>
</head>
<body>
<?php
printf("El numero dos con diferentes formatos: %d %f %.2f",2,2,2);
?>
</body>
</html>
%s Cadena de carácteres
%c Carácter ASCII
<body>
<?php
$var = "texto";
$num = 3;
?>
</body>
</html>
<body>
<?php
// Strlen()
echo "<strong>Ejemplo de Strlen()</strong>
<br>".strlen("12345")."<br>";
echo "<hr>";
// Explode()
$pieza = "una-dos-tres-cuatro-cinco";
$piezas = explode("-", $pieza);
foreach($piezas as $individuales)
{
echo $individuales."<br>";
}
echo "<hr>";
// Sprintf()
$num = 5;
$objeto = 'árbol';
$formato = 'Hay %d monos en el %s';
// Substr()
$cadenaSubstr = "Hola mundo. Esta es una cadena a evaluar.";
echo "<strong>Ejemplo de Substr()</strong> <br>";
$cadenaSubstr = substr($cadenaSubstr, 4, 10);
echo $cadenaSubstr."<br>";
echo "<hr>";
// Chop()
echo "<strong>Ejemplo de Chop()</strong> <br>";
$cadenaChop = "Hola mundo ";
echo "<pre>";
echo chop($cadenaChop);
echo "</pre >";
echo "<hr>";
// Strpos()
echo "<strong>Ejemplo de Strpos()</strong> <br>";
$cadenaStrpos = 'Hola mundo. Esta es una cadena a evaluar.';
$encontrar = 'mundo';
$pos = strpos($cadenaStrpos, $encontrar);
// Str_replace()
echo "<strong>Ejemplo de Str_replace()</strong> <br>";
echo $cadenSTRreplace."<br>";
echo "<hr>";
// Ucfirst()
echo "<strong>Ejemplo de Ucfirst()</strong> <br>";
echo $cadenaUCfirst."<br>";
echo "<hr>";
// Ucwords()
echo "<strong>Ejemplo de Ucwords()</strong> <br>";
// Strtolower()
echo "<strong>Ejemplo de Strtolower()</strong> <br>";
echo $cadenaStrtolower."<br>";
echo "<hr>";
// Strtoupper()
echo "<strong>Ejemplo de Strtoupper()</strong> <br>";
echo $cadenaStrtoupper."<br>";
echo "<hr>";
// Trim()
echo "<strong>Ejemplo de Trim()</strong> <br>";
$cadenaTrim = " Hola mundo ";
echo "<pre>";
echo trim($cadenaTrim);
echo "</pre >";
echo "<hr>";
// Md5()
echo "<strong>Ejemplo de md5()</strong> <br>";
$cadenaMD5 = "Cadena cualquiera";
$cadenaMD5 = md5($cadenaMD5);
echo $cadenaMD5."<br>";
echo "<hr>";
// Nl2br()
echo "<strong>Ejemplo de Nl2br()</strong> <br>";
$cadenaNl2br = "Hola\nmundo\nHTML";
echo "<pre>";
$cadenaNl2br = nl2br($cadenaNl2br);
echo $cadenaNl2br;
?>
</body>
</html>
4) Funciones en PHP 7
En el cuarto capítulo de nuestro Tutorial PHP 7 veremos qué son las funciones,
para qué nos sirve y como emplearlas.
Funciones en PHP 7
4.1) ¿Qué son las funciones en PHP 7?
4.1) ¿Qué son las funciones en PHP 7?
En el mundo de la programación hay dos maneras de escribir código. Una es
escribiendo códigos largos, extensos y repitiendo pedazos del código. La otra es
dividiendo el código en pequeñas partes que se puedan volver a usar sin que se
tenga que repetir el mismo código una y otra vez. Obviamente la segunda
manera es la correcta y aquí es donde entran en juego las funciones (function).
En PHP existen dos tipos de funciones, las que PHP trae por defecto ara que el
programador las utilice y las que el programador crea desde cero dependiendo
de sus necesidades. Aquí abordaremos la segunda opción.
Las funciones en PHP se crean usando la palabra clave function seguida por el
nombre y por ultimo un para de paréntesis (). El código que ejecutara la función
es encerrado entre corchetes.
<body>
<?php
function saludame()
{
echo "Hola programador, ¿cómo estás?.";
}
// Invocamos la función
saludame();
?>
</body>
</html>
<body>
<?php
function validarEdad()
{
$edad = 23;
if($edad == 23)
{
return true;
}
else
{
return false;
}
if(validarEdad())
{
echo "La edad es 23";
}
?>
</body>
</html>
<body>
<?php
function sumarDatos($dato1,$dato2,$dato3,$item)
{
$totalDeDatos = $dato1+$dato2+$dato3;
sumarDatos(10,20,1,'Dulces de caramelo');
?>
</body>
</html>
Usando variables fuera de Función
Cuando tengamos que utilizar una variable que no esté declara dentro de la
función tendremos que hacer uso de global.
<body>
<?php
function sumarDatos($dato1,$dato2,$dato3,$item)
{
$totalDeDatos = $dato1+$dato2+$dato3;
echo "El total de datos es: ".$totalDeDatos." para el item: ".$item." para
la tienda: ".$tienda .".";
sumarDatos(10,20,1,'Dulces de caramelo');
?>
</body>
</html>
5) Procesado de formularios con PHP 7
En el quinto capítulo de nuestro Tutorial PHP 7 veremos cómo utilizar los
formularios, y cómo recuperar los datos enviados en ellos, con las variables
globales $_POST y $_GET. También veremos cómo enviar correos electrónicos
con la función mail() de PHP 7.
Procesado de formularios con PHP 7
5.1) Recuperar datos en métodos GET y POST
5.2) ¿Qué es la función mail en PHP 7?
5.1) Recuperar datos en métodos GET y POST
GET y POST son dos métodos HTTP con los cuales podemos enviar datos de
un formulario a nuestro PHP. Pero, ¿qué es GET y qué es POST? . Vamos a
verlo.
GET vs. POST
Estrictamente hablando, la diferencia entre GET y POST reside en cómo se
transfieren las solicitudes. La información en GET se transmite en la URL. Si
alguna vez has visto una URL que incluye signos de interrogación y los símbolos
de unión, estabas buscando a una petición GET:
example.com/request.php?var1=foo&var2=bar es una cadena GET que
codifica la variable “var1” como “foo” y la variable “var2” como “bar”.
La información POST está incluida en el cuerpo de la solicitud, y no es visible en
la cadena de URL (y por lo tanto, no es visible para el usuario), ésta viaja “en un
sobre” y llega al servidor.
Veamos un ejemplo, creemos una carpeta dentro de "mis_apps" que se
llame "capitulo_5 y en ella, creemos un archivo
llamado ejemplo_get.php con el siguiente código:
<html>
<head>
<title>Ejemplo de métodos HTTP en PHP 7</title>
</head>
<body>
<?php
if($_GET)
{
echo "El formulario se ejecutó con éxito.<br><br>";
echo "<pre>";
print_r($_GET);
echo "</pre >";
}
?>
<p>
Dime cuál es tu nombre: <input type="text" name="nombre">
</p>
<p>
Dime cómo se llama tu ciudad: <input type="text" name="ciudad">
</p>
<p>
¿En qué año naciste?:
<select name="anoNacimiento">
<option value="null">Selecciona un año</option>
<?php
$anos = 1900;
while ($anos < 2000)
{
?>
<option value="<?=$anos;?>"><?=$anos;?></option>
<?php
$anos++;
}
?>
</select>
</p>
<p>
<input type="submit" value="Validar">
</p>
</form>
</body>
</html>
<body>
<?php
if($_POST)
{
echo "El formulario se ejecutó con éxito.<br><br>";
echo "<pre>";
print_r($_POST);
echo "</pre >";
}
?>
<p>
Dime cuál es tu nombre: <input type="text" name="nombre">
</p>
<p>
Dime cómo se llama tu ciudad: <input type="text" name="ciudad">
</p>
<p>
¿En qué año naciste?:
<select name="anoNacimiento">
<option value="null">Selecciona un año</option>
<?php
$anos = 1900;
while ($anos < 2000)
{
?>
<option value="<?=$anos;?>"><?=$anos;?></option>
<?php
$anos++;
}
?>
</select>
</p>
<p>
<input type="submit" value="Validar">
</p>
</form>
</body>
</html>
5.2) ¿Qué es la función mail en PHP 7?
PHP 7 nos ofrece la posibilidad de enviar correos electrónicos de una manera
sencilla y muy fácil, para ello hacemos uso de la función mail().
Función email() en PHP 7
Veamos un ejemplo, dentro de "mis_apps/capitulo_5" creemos un archivo
llamado ejemplo_mail.php con el siguiente código:
<html>
<head>
<title>Ejemplo de email en PHP 7</title>
</head>
<body>
<?php
if($_POST)
{
// Correo al que queremos que llegue
$destinatario = "[email protected]";
// Asunto
$asunto = "Email de prueba del Tutorial PHP 7";
// Mensaje
$mensaje = "Hola, este email es una prueba del Tutorial PHP 7. Los
datos anexos al email son: <br><br>
Nombre: ".$_POST['nombre']."<br>
Ciudad: ".$_POST['ciudad']."<br>
Año de nacimiento: ".$_POST['anoNacimiento']."<br><br>
Saludos!";
// Cabeceras
// Para enviar un correo HTML, debe establecerse la cabecera Content-
type
$cabeceras = 'MIME-Version: 1.0' . "\r\n";
$cabeceras .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
// Cabeceras adicionales
$cabeceras .= 'To: TU NOMBRE <[email protected]>' . "\r\n";
$cabeceras .= 'From: Tutorial PHP 7 <[email protected]>' .
"\r\n";
// Enviamos el email
?>
</form>
</body>
</html>
6) Bases de Datos MySQL en PHP 7
En el sexto capítulo de nuestro Tutorial PHP 7 veremos cómo interactuar con
la Base de Datos MySQL desde PHP 7.
Bases de Datos MySQL en PHP 7
6.1) Crear la base de datos y tabla MySQL en PHP 7
6.2) Conectarse a la Base de Datos de MySQL en PHP 7
6.3) Consultas a la Base de Datos MySQL en PHP 7
6.4) Insertar registros a la Base de Datos MySQL en PHP 7
6.5) Actualizar registros de Base de Datos MySQL en PHP 7
6.6) Borrar registros de la Base de Datos MySQL en PHP 7
6.1) Crear la base de datos y tabla MySQL en PHP 7
Para la realización de este Tutorial de PHP 7 con uso de Base de Datos hemos
elegido al servidor MySQL por ser gratuita, y por ser también la más empleada
en entornos GNU/Linux y UNIX (ya que comunmente PHP 7 es más usado en
estas plataformas).
Vamos a practicar, primero nos conectaremos al servidor MySQL:
mysql -u NUESTRO_USUARIO -p
Seguido, nos pedirá nuestra constraseña del usuario.
Ya que estamos conectados, el comando para crear una base de datos en es el
siguiente:
create database NOMBREDELABASEDEDATOS;
Una vez conseguido esto debemos crear las tablas en la base de datos, la
descripción de las tablas contienen la estructura de la información que
almacenaremos en ellas,para lo cual usaremos en lenguaje de consultas SQL
común para todas las bases de datos relacionales.
En este ejemplo creamos una tabla llamada prueba con 3 campos: un campo
identificador, que nos servirá para identificar unívocamente una fila con el valor
de dicho campo, otro campo con el nombre de una persona y por último un
campo con el apellido de la persona. Vamos a crearla.
Por último, para ver los campos de la tabla “personas”, ejecutamos el siguiente
comando, nos tiene que devolver la descripción de la próxima imagen:
DESCRIBE personas;
Muy bien, hemos aprendido a crear una base datos y una tabla en MySQL.
<body>
<?php
function Conectarse()
{
global $host, $puerto, $usuario, $contrasena, $baseDeDatos, $tabla;
$link = Conectarse();
mysql_close($link);
?>
</body>
</html>
<body>
<?php
function Conectarse()
{
global $host, $puerto, $usuario, $contrasena, $baseDeDatos, $tabla;
$link = Conectarse();
?>
<table>
<tr>
<td>Nombre</td>
<td>Apellidos</td>
<tr>
<?php
while($row = mysqli_fetch_array($result))
{
printf("<tr><td>%s</td><td>%s</td></tr>",
$row["Nombre"],$row["Apellidos"]);
mysqli_free_result($result);
mysqli_close($link);
?>
</table>
</body>
</html>
<body>
<?php
function Conectarse()
{
global $host, $puerto, $usuario, $contrasena, $baseDeDatos, $tabla;
$link = Conectarse();
if($_POST)
{
$queryInsert = "INSERT INTO $tabla (Nombre, Apellidos) VALUES
('".$_POST['nombreForm']."', '".$_POST['apellidoForm']."');";
if($resultInsert)
{
echo "<strong>Se ingresaron los registros con exito</strong>.
<br>";
}
else
{
echo "No se ingresaron los registros. <br>";
}
?>
<table>
<tr>
<td>Nombre</td>
<td>Apellidos</td>
<tr>
<?php
while($row = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td>";
echo $row["Nombre"];
echo "</td>";
echo "<td>";
echo $row["Apellidos"];
echo "</td>";
echo "</tr>";
mysqli_free_result($result);
mysqli_close($link);
?>
</table>
<hr>
<form action="" method="post">
Nombre: <input type="text" name="nombreForm"> <br> <br>
Apellidos: <input type="text" name="apellidoForm"> <br> <br>
<input type="submit" value="Guardar">
</form>
</body>
</html>
En nuestro script, si se ejecuta el método post ($_POST) se inicia el nuevo query
e insertamos el registro con la instrucción INSERT del lenguaje de base de
datos SQL.
6.5) Actualizar registros de Base de Datos MySQL
en PHP 7
Hemos visto cómo conectar, seleccionar e insertar registros en la de base de
datos MySQL con PHP 7. En este capítulo veremos como actualizarlo.
Veamos un ejemplo, creemos un archivo
llamado ejemplo_update_mysql.php con el siguiente código:
<html>
<head>
<title>Ejemplo de actualización de datos en base de datos
MySQL</title>
</head>
<body>
<?php
function Conectarse()
{
global $host, $puerto, $usuario, $contrasena, $baseDeDatos, $tabla;
$link = Conectarse();
if($_POST)
{
$queryUpdate = "UPDATE $tabla SET Nombre = '".$_POST['nombreForm']."',
Apellidos = '".$_POST['apellidoForm']."'
WHERE ID = ".$_POST['idForm'].";";
if($resultUpdate)
{
echo "<strong>El registro ID ".$_POST['idForm']." con
exito</strong>. <br>";
}
else
{
echo "No se pudo actualizar el registro. <br>";
}
?>
<table>
<tr>
<td>Nombre</td>
<td>Apellidos</td>
<tr>
<?php
while($row = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td>";
echo $row["Nombre"];
echo "</td>";
echo "<td>";
echo $row["Apellidos"];
echo "</td>";
echo "<td>";
echo "<a href=\"?id=".$row["ID"]."\">Actualizar</a>";
echo "</td>";
echo "</tr>";
mysqli_free_result($result);
?>
</table>
<hr>
<?php
if($_GET)
{
$querySelectByID = "SELECT ID, Nombre, Apellidos FROM $tabla WHERE ID
= ".$_GET['id'].";";
$rowSelectByID = mysqli_fetch_array($resultSelectByID);
?>
<?php
}
mysqli_close($link);
?>
</body>
</html>
<body>
<?php
function Conectarse()
{
global $host, $puerto, $usuario, $contrasena, $baseDeDatos, $tabla;
$link = Conectarse();
if($_GET)
{
$queryDelete = "DELETE FROM $tabla WHERE ID = ".$_GET['id'].";";
if($resultDelete)
{
echo "<strong>El registro se ha eliminado con exito</strong>.<br>";
}
else
{
echo "Hubo un problema borrando el registro.";
}
}
$query = "SELECT ID, Nombre, Apellidos FROM $tabla;";
?>
<table>
<tr>
<td>Nombre</td>
<td>Apellidos</td>
<tr>
<?php
while($row = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td>";
echo $row["Nombre"];
echo "</td>";
echo "<td>";
echo $row["Apellidos"];
echo "</td>";
echo "<td>";
echo "<a href=\"?id=".$row["ID"]."\">Borrrar</a>";
echo "</td>";
echo "</tr>";
mysqli_free_result($result);
mysqli_close($link);
?>
</table>
<hr>
</body>
</html>
7) Sesiones en PHP 7
En el septimo capítulo de nuestro Tutorial PHP 7 veremos cómo usar
las sesiones desde PHP 7.
7) Sesiones en PHP 7
7.1) ¿Qué son las sesiones en PHP 7?
7.2) Ejemplo de uso de sesiones en PHP 7
7.1) ¿Qué son las sesiones en PHP 7?
En este artículo intentaré explicar, de la forma más simple posible, qué son las
sesiones en PHP 7, cómo funcionan y cómo las implementa el servidor web. El
objetivo de este artículo no es explicar cómo usar sesiones, sino comprender la
mecánica del funcionamiento, para entender cómo actúan los ataques contra
ellas.
Antecedentes
El protocolo que utiliza la web (HTTP) es un protocolo sin estado, es decir, que
no guarda ninguna información sobre conexiones anteriores: no sabe en qué
página web estuviste antes ni si ya has enviado datos al sitio web. Lo único que
conoce la página web son los datos que le llegan a través de la URL.
Dado que algunas páginas web querían poder reconocer a los visitantes y
guardar datos de los mismos de una conexión a otra sin tener que ir arrastrando
un montón de parámetros en la URL, se inventaron las ya famosas cookies. Una
cookie es un fragmento de información que se guarda en el ordenador del
usuario y que está asociado al navegador con el que visitó la página web. Esto
quiere decir que cada navegador guarda sus propias cookies y no las comparte
con otros navegadores. La forma en la que se guarda esta información depende
del navegador, aunque muchos las almacenan como archivos de texto en un
directorio dado.
Cuando un navegador va a abrir una página web, si tiene alguna cookie
guardada asociada a ese sitio web (en realidad, a ese dominio), coge los datos
de la misma y los manda al servidor web junto con la petición de la página.
El sitio web que pone una cookie, también le dice al navegador hasta cuando
debe durar (como máximo) la misma: desde “hasta que se cierre el navegador”
hasta cualquier cantidad de tiempo. Un dominio sólo puede acceder a las cookies
que puso él mismo en el navegador, es decir, un dominio no puede acceder a
las cookies de otros dominios.
Así que, para guardar datos más críticos, se necesitaba un método que no fuera
modificable por los usuarios (para evitar que, por ejemplo, un usuario autenticado
se hiciera pasar por otro). Así nacieron las sesiones.
Una sesión en PHP 7 es una serie de caracteres aleatorios que forman una
identificación única para cada visitante (a la que llamaremos “id de sesión”).
Cuando a un usuario se le asigna un id de sesión, el servidor web crea un archivo
en su sistema donde irá introduciendo todos los datos que queramos guardar.
Pero, ¿cómo reconoce el sitio web al usuario en sucesivas conexiones? Pues
usando alguno de los dos métodos anteriores; esto es, haciendo que el usuario
le mande en la URL su id de sesión o enviándole una cookie con el mismo y con
una duración de “hasta que se cierre el navegador”.
if(session_id()=="")
{
session_start();
}
if($_POST)
{
if(@$_SESSION['autentificado']!=TRUE)
{
$_SESSION['autentificado'] = TRUE;
$_SESSION['nombre'] = $_POST['nombreForm'];
$_SESSION['edad'] = $_POST['edadForm'];
}
}
if(@$_GET['salir']=="true")
{
session_unset();
session_destroy();
}
?>
<html>
<head>
<title>Ejemplo de sesión en PHP 7</title>
</head>
<body>
<?php
if(@$_SESSION['autentificado']==TRUE)
{
?>
<p>
Hola <?=$_SESSION['nombre'];?>, tienes <?=$_SESSION['edad'];?> años y
estás autentificado. <a href="?salir=true">Haz click aquí para salir</a>.
</p>
<?php
}
else
{
?>
<p>
<strong>¡Hola!, veo que no estás autentificado, por favor llena el
formulario:</strong>
</p>
<form action="" method="post">
Nombre: <input type="text" name="nombreForm"> <br> <br>
Edad: <input type="text" name="edadForm"> <br> <br>
<input type="subm it" value="Guardar">
</form>
<?php
}
?>
</body>
</html>
Y con este último código, veremos cómo usar los datos. Creemos un archivo
llamado ejemplo_sesion_2.php con el siguiente código:
<?php
if(session_id()=="")
{
session_start();
}
?>
<html>
<head>
<title>Ejemplo de sesión en PHP 7</title>
</head>
<body>
<pre>
<?php
print_r($_SESSION);
?>
</pre >
</body>
</html>
8) Cookies en PHP 7
En el octavo capítulo de nuestro Tutorial PHP 7 veremos qué son las Cookies y
cómo usarlas.
8) Cookies en PHP 7
8.1) ¿Qué son las Cookies en PHP 7?
8.2) Ejemplos de cómo usar Cookies en PHP 7
8.1) ¿Qué son las Cookies en PHP 7?
La principal utilidad de las cookies (galletas) en PHP 7 es la de solventar el
problema de la falta de estado en la navegación a través de las paginas web.
Con las cookies, pequeñas porciones de información se quedan registradas en
el navegador permitiendo identificar a este a través de diferentes páginas de un
mismo sitio e incluso durante visitas entre distintos días, muy ventajoso a
comparación de las sesiones.
Realmente las cookies no son mas que cadenas de texto que son enviadas
desde el servidor al cliente (navegador) y almacenadas en este, luego el
navegador envía estas cookies al servidor permitiendo así la identificación del
cliente en el servidor.
A continuación vamos a ver como usar las cookies para nuestro beneficio.
/*
Todos los argumentos excepto el nombre son opcionales.
*/
?>
?>
<html>
<head>
<title>Ejemplo de cookie en PHP 7</title>
</head>
<body>
<?php
if($_COOKIE)
{
echo "Hay Cookies!: <br>";
print_r($_COOKIE);
}
else
{
echo "No hay Cookies :( <br>";
}
?>
<p>
<strong>¡Hola!, vamos a grabarte en cookie:</strong>
</p>
<form action="" method="post">
Nombre: <input type="text" name="nombreForm"> <br> <br>
Dominio: <input type="text" name="dominioForm"> <br> <br>
<input type="submit" value="Guardar Cookie">
</form>
</body>
</html>
9) Expresiones regulares EE.RR en PHP 7
Siendo éste el penúltimo capítulo de nuestro Tutorial PHP 7 veremos el tema de
las Expresiones Regulares, qué son y cómo implementarlas en PHP 7.
9) Expresiones regulares EE.RR en PHP 7
9.1) ¿Qué son las expresiones regulares en PHP 7?
9.2) Veamos 10 ejemplos
sobre patrones de expresiones regulares
9.3) Ejemplos de expresiones regulares
9.1) ¿Qué son las expresiones regulares en PHP 7?
Las expresiones regulares son cadenas de caracteres que forman un patrón,
expresan un texto más extenso y buscan una coincidencia, en PHP 7 existen
diversas funciones, vamos a ver las más importantes.
preg_match().- Realiza una comparación con una expresión regular.
preg_replace().- Realiza una búsqueda y sustitución de una expresión
regular.
preg_match_all().- Realiza una comparación global de una expresión
regular.
preg_split().- Divide un string mediante una expresión regular.
Podemos encontrar más funciones para expresiones regulares en PHP 7 en el
siguiente sitio oficial de PHP:
Funciones de PCRE
9.2) Veamos 10 ejemplos sobre patrones de
expresiones regulares
En este artículo explicaré 10 ejemplos muy comunes sobre expresiones
regulares, muy útiles para tus proyectos web 100% compatibles con funciones
de PHP 7.
1) Validar una URL
¿Quieres saber si una dirección web es válida?, no hay problema, con esta
expresión regular lo tendremos muy fácil:
/^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \?=.-]*)*\/?$/
2) Validar un E-mail
En muchas ocasiones necesitaremos saber si un e-mail con el que se trata de
registrar un usuario es válido:
^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$
3) Comprobar la seguridad de una contraseña
Para aquellos que necesitáis sugerir / comprobar la fortaleza de una contraseña:
(?=^.{8,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$
De esta forma comprobaremos:
/* Multi-Función */
function regexCheck($variable,$case)
{
case "ipAddress":
$regex = "/^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([1-
9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/";
break;
case "userName":
$regex = "/^[a-z\d_]{4,15}$/i";
break;
}
if(preg_match($regex,$variable))
{
return TRUE;
}
else
{
return FALSE;
}
if(@$_POST['emailForm'])
{
if(regexCheck($_POST['emailForm'],"email")){
$resultadoEmail = "El email tiene el formato correcto.";
}
else
{
$resultadoEmail = "El email NO tiene el formato correcto.";
}
}
if(@$_POST['IPForm'])
{
if(regexCheck($_POST['IPForm'],"ipAddress")){
$resultadoIP = "La dirección IP tiene el formato correcto.";
}
else
{
$resultadoIP = "La dirección IP NO tiene el formato correcto.";
}
}
if(@$_POST['UserNameForm'])
{
if(regexCheck($_POST['UserNameForm'],"userName")){
$resultadoUN = "El nombre de usuario tiene el formato correcto.";
}
else
{
$resultadoUN = "El nombre de usuario tiene el formato correcto.";
}
}
?>
<html>
<head>
<title>Ejemplo de expresiones regulares en PHP 7</title>
</head>
<body>
<h3>Validemos e-mail:</h3>
<form action="" method="post">
Tu e-mail:
<input type="text" name="emailForm"> <br> <br>
<input type="submit" value="Comprobar">
</form>
<strong><?php echo @$resultadoEmail; ?></strong>
<h3>Dirección IP:</h3>
<form action="" method="post">
IP:
<input type="text" name="IPForm"> <br> <br>
<input type="submit" value="Comprobar">
</form>
<strong><?php echo @$resultadoIP; ?></strong>
<h3>Nombre de usuario:</h3>
<form action="" method="post">
Uusario:
<input type="text" name="UserNameForm"> <br> <br>
<input type="submit" value="Comprobar">
</form>
<strong><?php echo @$resultadoUN; ?></strong>
</body>
</html>
10) PHP 7 Orientado a Objetos
En este capítulo de nuestro Tutorial PHP 7 veremos qué la principal ventaja
de PHP 7, la Programación Orientada a Objetos (POO).
10) PHP 7 Orientado a Objetos
10.1) ¿Qué son las clases en PHP 7?
10.2) Los atributos de POO en PHP 7
10.3) ¿Qué es la Herencia POO en PHP 7?
10.4) Veamos el Acceso Public (Público) en POO PHP 7
10.5) Veamos el Acceso Private (Privado) en POO PHP 7
10.1) ¿Qué son las clases en PHP 7?
Las siglas de Programacion Orientada a Objetos (OOP en ingles – Object
Oriented Programming – ) es una variante de programación que permite
reutilizar gran parte del codigo, lo hace más estetico y legible ya que esta mas
orientado a la lógica humana, además de ser muy útil en grandes proyectos.
En proyectos con varios programadores, es posible asignar clases especificas
que hagan un determinadi trabajo a cada programador, y este desarrollarla
independientemente de los avances de los demás, ya que los objetos son
independientes unos de otros, esto hace más rápido y práctico el desarrollo del
proyecto.
OOP en PHP
PHP desde su version 3.0 soportaba la sintaxis de la OOP sin embargo en ese
tiempo (y un poco ahora) carecia de todas sus caracteristicas. A este tiempo PHP
soporta todo lo que un lenguaje orientado a objetos en teória deberia soportar:
Encapsulamiento.
Tipos Abstractos de Datos y ocultamiento de la Información.
Herencia.
Polimorfismo.
PHP 7 no es un lenguaje 100% Orientado a Objetos sin embargo los soporta y
muy bien, ¿por qué no obetener provecho de eso?, para comprender la POO,
debemos comprender las partes que la conforman:
¿Qué son las clases?
La clase es una plantilla que usamos para crear objetos, al crear un objeto de
una clase se dice que es una instancia de esa clase. Los objetos en PHP 7 se
crean (instancian) con la palabra reservada New.
¿Qué son las clases?
La clase es una plantilla que usamos para crear objetos, al crear un objeto de
una clase se dice que es una instancia de esa clase. Los objetos en PHP 7 se
crean (instancian) con la palabra reservada New.
<?php
class Ejemplo
{
//Constructor
function Ejemplo()
{
//Nada por aquí
}
//Iniciamos la clase
$ob = new Ejemplo();
?>
Aqui la variable $ob sería una instancia de la clase Ejemplo.
Constructor
El constructor es el método que es llamdo automáticamente al crear una
instancia de la clase, el constructor lleva el mismo nombre de la clase, el
constructor no debe retornar ningun valor y es unico (distintamente a C plus).
Pero bien, para que una clase sea útil necesita metodos y atributos:
Métodos
Los métodos (también operaciones) no son más que un tipo de funciones propias
de la clase, se manejan igual, reciben parametros, desarrollan un proceso y
devuelven (o no) un valor, los métodos se definen con la palabra
reservada function.
<?php
class Ejemplo
{
//Constructor
function Ejemplo()
{
//Nada por aquí
}
function MuestraNombre($nombre)
{
echo "El nombre es " . $nombre;
}
}
//Iniciamos la clase
$obj = new Ejemplo();
//Llamamos al método
$obj->MuestraNombre('Fernando Gil');
?>
Esto es una clase con un simple método que muestra el valor de su unico
parámetro programado, el ejemplo daria como resultado:
class Ejemplo()
{
var $atributo;
function Ejemplo()
{
//Do nothing...
}
function DaValor($valor)
{
$this->atributo = $valor;
}
$obj->DaValor(4);
?>
Ahora el atributo valdra 4, $this usada en el ejemplo, es una variable especial
referenciada al objeto y atributos de la clase o de la clases heredadas, esto nos
lleva al siguiente punto.
<?php
class Ejemplo {
var $atributo;
function Ejemplo()
{
// Do nothing
}
function setAtributo($value)
{
$atributo = $value;
}
}
function getAtributo()
{
return $atributo;
}
}
$obj->setAtributo(7);
echo $obj->getAtributo();
?>
Como ves se pueden usar los métodos de las dos clases ya que al instanciar un
objeto de la clase Ejemplo2 al ser heredada de Ejemplo adquiere sus métodos.
10.4) Veamos el Acceso Public (Público) en POO
PHP 7
Acceso Public (Publico)
Al ser declarado un método o atributo public, éste será accesible desde
cualquier punto del script, éste es el punto más bajo del sistema de proteccion.
Para declarar público, se debe de usar la palabra reservada public.
<?php
class Ejemplo ()
{
public $atributo;
function Ejemplo()
{
$this->atributo = 'Hey!';
}
echo $obj->atributo;
?>
10.5) Veamos el Acceso Private (Privado) en POO
PHP 7
Acceso Private (Privado)
Este es el más restrictivo, los elementos declarados bajo private sólo serán
accesibles desde métodos de su clase original.
<?php
class Ejemplo ()
{
private $atributo;
function Ejemplo()
{
$this->atributo = 'Hey!';
}
function daAtributo()
{
return $this->atributo;
}
echo $obj->daAtributo;
?>
Como te darás cuenta, hemos tenido que instanciar un método para devolver el
valor de atributo.