PHP Exercicios POO

De MediaWiki
Revisión del 11:28 15 nov 2016 de Wiki (discusión | contribuciones) (Página creada con «== Definición de clases. Creación de obxectos e acceso a variables e métodos == * Un programador novato (PN) decide introducirse no mundo da POO e intenta implantar unh...»)
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Ir a la navegación Ir a la búsqueda

Definición de clases. Creación de obxectos e acceso a variables e métodos

  • Un programador novato (PN) decide introducirse no mundo da POO e intenta implantar

unha solución informática para a xestión dos vehículos da Empresa de Transporte na que traballa. Decide utilizar como linguaxe de programación PHP.

  • O problema que se lle expón é o seguinte: necesita almacenar información sobre os

distintos vehículos de que dispón a Empresa. Entre esta información está o ano de compra do vehículo, a súa matrícula, a súa marca.

  • O PN decide implantar nunha clase, a información necesaria.
Na páxina que vai amosar os datos (chamarémoslle Principal, o PN vai crear os catro vehículos de que dispón a Empresa neste momento, e vailles a asignar uns valores:
Php POO Ex 1.jpg

Exercicio: implantar a solución

Solución:

  • Arquivo: Vehiculos.class.php
1 <?php
2 
3 class Vehiculos(){
4     $matricula;
5     $marca;
6     $ano;
7     
8 }
  • Arquivo: IncluirClases.inc.php
1 <?php
2     function cargadorClases($class) {
3         require $class . '.class.php';
4     }
5 
6     spl_autoload_register('cargadorClases');


  • Arquivo: Principal.php
 1 <?php
 2     include 'IncluirClases.inc.php';
 3 ?>
 4 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 5     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 6 <html xmlns="http://www.w3.org/1999/xhtml" lang="es" xml:lang="es">
 7     <head>
 8         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
 9         <title>Exemplos de uso de clases</title>
10     </head>
11     <body>
12         <?php
13             $veh1 = new Vehiculos();
14             $veh2 = new Vehiculos();
15             $veh3 = new Vehiculos();
16             $veh4 = new Vehiculos();
17             
18             $veh1->marca = "Peugot";
19             $veh1->matricula = "C-1234-BZ";
20             $veh1->ano = 1999;
21             
22             $veh2->marca = "Fiat";
23             $veh2->matricula = "C-4325-AZ";
24             $veh2->ano = 1998;
25             
26             $veh3->marca = "Opel";
27             $veh3->matricula = "C-2342-AF";
28             $veh3->ano = 1996;
29             
30             $veh4->marca = "Ford";
31             $veh4->matricula = "C-4322-CF";
32             $veh4->ano = 2000;
33         ?>
34     </body>
35     
36 </html>


  • Comproba que non lle deu erros, pero queda coa dúbida se terá almacenados os

valores dunha forma correcta, polo que é necesario que imprima devanditos valores. Para imprimir os valores, necesita un procedemento (método) que os saque por pantalla. Así que decide crear dentro da clase Vehículo, un método que imprima devandita información. Podería facer un único método que imprima o ano, matrícula e marca á vez, pero decide crear tres métodos, un para cada tipo de información a imprimir, de nome impAno, impMatricula, impMarca, por se necesita mostrar a información de forma individualizada. Unha vez implantados, decide probalos, a ver se mostran a información correcta, Para iso modifica a clase Principal, facendo que cada obxecto Vehículo chame a cada un dos métodos.




-- Ángel D. Fernández González -- (2016).