este%curso%formaparte%de% una%seriede% cursos%cuyo%objevo %principal%es%el%de%enseñar%...

156
Este curso forma parte de una serie de cursos cuyo obje4vo principal es el de enseñar el lenguaje de programación PHP a personas con conocimientos básicos de programación, y prepararlos para llevar a cabo proyectos de gran envergadura. Para ello se enseñará PHP básico (este curso), PHP orientado a Objetos, las mejores y más novedosas prac4cas en PHP, Patrones de Diseño y el Zend Framework. 1 © Curso creado por Enrique Areyán. Curso PHP Básico

Upload: phamhanh

Post on 02-Dec-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

Este  curso  forma  parte  de  una  serie  de  cursos  cuyo  obje4vo  principal  es  el  de  enseñar  el  lenguaje  de  programación  PHP  a  personas  con  conocimientos  básicos  de  programación,  y  prepararlos  para  llevar  a  cabo  proyectos  de  gran  envergadura.  Para  ello  se  enseñará  PHP  básico  (este  curso),  PHP  orientado  a  Objetos,  las  mejores  y  más  novedosas  prac4cas  en  PHP,  Patrones  de  Diseño  y  el  Zend  Framework.  

1  ©  Curso  creado  por  Enrique  Areyán.  

Curso  PHP  Básico  

Pueden  contactarme  a  través  del  correo  electrónico  [email protected]  

2  ©  Curso  creado  por  Enrique  Areyán.  

Curso  PHP  Básico  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   3  

Este  curso  de  PHP  Orientado  a  Objetos  pretender  enseñar  las  herramientas  básicas  para  desarrollar  sistemas  web  bajo  el  paradigma  de  programación  orientada  a  objetos  en  lenguaje  PHP.  Aquí  se  cubrirán  los  aspectos  básicos  más  importantes  de  la  programación  orientada  a  objetos  tanto  desde  el  punto  de  vista  teórico  como  prác4co.    Se  asume  que  el  par4cipante  4ene  conocimientos  básicos  de  programación  en  PHP  o  que  ha  par4cipado  en  el  curso  anterior  a  éste  de  PHP  Básico.  

4  ©  Curso  creado  por  Enrique  Areyán.  

Curso  PHP  Básico  

Una  revisión  general.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   5  

La  documentación  en  línea  sobre  PHP  es  vasta  y  de  calidad.  Si  algo  no  se  consigue  en  el  si4o  de  php,  www.php.net,  u4lizando  google  se  4enen  altas  probabilidades  de  solventar  esta  deficiencia.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   6  

Una  función  na4va  es  aquélla  que  ya  viene  incluída  como  parte  de  las  librerías  internas  del  lenguaje  y  por  lo  tanto  no  debe  ser  implementada  por  el  programador.  Esto  nos  ahorra  4empo.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   7  

PHP  se  caracteriza  por  ser  un  lenguaje  flexible.  Esta  caracterís4ca  4ene  sus  ventajas  y  desventajas,  como  veremos  más  adelante.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   8  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   9  

En  este  apartado  se  argumentarán  algunas  de  las  razones  por  las  cuales  la  programación  con  PHP  simple  (no  orientado  a  objetos)  es  insuficiente  al  momento  de  desarrollar  sistemas  complejos.  Para  tal  fin,  exploraremos  las  estrategias  de  programación  de  un  ejemplo  sencillo  tanto  en  programación  impera4va  como  en  POO.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   10  

El  código  anterior  busca  encapsular,  a  través  de  una  función,  lógica  propia  a  un  sólo  bloque  de  código.  Sin  embargo,  esta  estrategia  falla  por  varias  razones.  Visto  de  otra  forma,  al  ver  éste  código  pregúntese  lo  siguiente:  

• Qué  pasa  cuando  se  empiezan  a  tener  muchas  propiedades?  

• O  si  se  comienzan  a  tener  muchas  funciones?  

• Qué  pasa  si  queremos  otro  conjunto  de  ru4nas  y  parte  de  los  nombres  de  las  funciones  se  repiten?  

Ver  archivo  CodigoImpera4vo.php  en  la  carpeta  /Ejemplos  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   11  

El  mismo  código  del  ejemplo  anterior,  pero  en  este  caso  orientado  a  objetos.  En  el  código  vemos  una  clase  llamada  Automóvil  que  posee  dos  propiedades  y  un  método.  Más  adelante  explicaremos  con  mayor  detalle  qué  significan  cada  una  de  estas  cosas.  Por  el  momento  es  interesante  observar  como  en  un  sólo  bloque  de  código  (agrupado  entre  las  palabras  claves  class  Atuomovil  {  …  })  Tenemos  agrupada  la  información  que  trabaja  sobre  un  “Automóvil”.    

Más  aún,  al  momento  de  instanciar,  es  decir,  realizar  copias  de  un  automóvil,  vemos  como  la  POO  nos  hace  la  vida  fácil.  En  el  código  anterior  $a  y  $b  son  copias  dis4ntas,  permi4endo  así  que  $a  tenga  una  propiedad  ‘modelo’  que  es  suya  propia  y  dis4nta  de  la  propiedad  ‘modelo’  de  la  variable  $b.  

CodigoOrientadoAObjetos.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   12  

Algunas  de  las  caracterís4cas  técnicas  básicas  a  resaltar  de  la  POO  en  general.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   13  

Independientemente  del  lenguaje  de  programación  que  emplees,  si  éste  soporta  programación  orientada  a  objetos  entonces  las  tres  caracterís4cas  de  arriba  son  fundamentales  al  momento  de  programar.  Estas  tres  caracterís4cas  no  sólo  cambian  la  forma  de  codificar  algoritmos,  sino  que  proveen  al  programador  de  toda  una  nueva  estrategia  al  momento  de  enfrentar  las  etapas  de  análisis  y  desarrollo  de  sistemas.  Dominar  estas  técnicas  implícitas  en  la  POO  es  fundamental  para  el  éxito  del  proyecto.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   14  

En  este  apartado  exploraremos  las  herramientas  y  conceptos  básicos  de  la  POO  en  general  pero  siempre  con  ejemplos  concretos  en  el  lenguaje  PHP.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   15  

Como  ya  se  ha  reflejado  antes,  toda  clase  consta  de  la  palabra  clave  class  seguido  del  nombre  de  la  clase  y  un  bloque  de  código  entre  llaves.  Dentro  del  bloque  de  código  se  pueden  crear  sólo  tres  4pos  de  bloques  básicos:  constantes,  variables  y  métodos.  Una  vez  creadas  dentro  de  las  llaves,  tanto  la  constante,  como  la  variable,  como  la  función  pertenecen  a  la  clase,  y  para  ser  u4lizadas  hay  que  acceder  a  través  de  la  clase.  

ClaseSimple.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   16  

Aquí  se  muestran  las  carácterísitcas  básicas  de  una  clase.  Una  analogía  apropiada  (pero  muy  básica)  al  momento  de  pensar  en  una  clase  es  pensar  en  un  molde  del  cuál  se  van  a  extraer  múl4ples  “copias”  u  “objetos”  similares.  A  diferencia  de  un  objeto  osico,  en  este  caso  las  copias  serán  dinámicas  y  pueden  cambiar  su  comportamiento  y  estructura  al  momento  de  ejecutar  un  programa.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   17  

Aquí  ‘Automovil’  es  la  clase  y  la  variable  $a  es  un  objeto  (instancia  o  copia  personalizada)  sobre  la  clase  Automovil.  La  palabra  clave  new  hace  que  Automovil  junto  a  todas  sus  propiedades  y  funciones  se  copien  a  $a.  

Objeto.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   18  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   19  

Resultado  del  ejercicio.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   20  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   21  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   22  

PropiedadesDeClases.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   23  

Una  de  las  diferencias  entre  las  propiedades  de  una  clase  y  las  variables  comunes  es  que  las  propiedades  al  ser  declaradas  dentro  de  la  clase  no  pueden  hacer  referencia  a  otras  variables.  Fuera  de  la  clase  si  se  pueden  asignar  otros  valores:  

$miModelo  =  “Toyota”;  Class  Automovil{        //Correcto:        public  sta4c  $modelo;        //Incorrecto:        public  sta4c  $modelo  =  $miModelo;  }  Automovil::$modelo  =  $miModelo;  

Esta  limitación  se  asignación  se  debe  a  que  el  intérprete  4ene  que  conocer  cuál  es  el  valor  de  todas  las  propiedades  de  una  clase  al  momento  de  leer  el  código.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   24  

Una  de  las  diferencias  entre  las  propiedades  de  una  clase  y  las  variables  comunes  es  que  las  propiedades  al  ser  declaradas  dentro  de  la  clase  no  pueden  hacer  referencia  a  otras  variables.  Fuera  de  la  clase  si  se  pueden  asignar  otros  valores:  

$miModelo  =  “Toyota”;  Class  Automovil{        //Correcto:        public  sta4c  $modelo;        //Incorrecto:        public  sta4c  $modelo  =  $miModelo;  }  Automovil::$modelo  =  $miModelo;  

Esta  limitación  se  asignación  se  debe  a  que  el  intérprete  4ene  que  conocer  cuál  es  el  valor  de  todas  las  propiedades  de  una  clase  al  momento  de  leer  el  código.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   25  

Una  de  las  diferencias  entre  las  propiedades  de  una  clase  y  las  variables  comunes  es  que  las  propiedades  al  ser  declaradas  dentro  de  la  clase  no  pueden  hacer  referencia  a  otras  variables.  Fuera  de  la  clase  si  se  pueden  asignar  otros  valores:  

$miModelo  =  “Toyota”;  Class  Automovil{        //Correcto:        public  sta4c  $modelo;        //Incorrecto:        public  sta4c  $modelo  =  $miModelo;  }  Automovil::$modelo  =  $miModelo;  

Esta  limitación  se  asignación  se  debe  a  que  el  intérprete  4ene  que  conocer  cuál  es  el  valor  de  todas  las  propiedades  de  una  clase  al  momento  de  leer  el  código.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   26  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   27  

Una  de  las  diferencias  entre  las  propiedades  de  una  clase  y  las  variables  comunes  es  que  las  propiedades  al  ser  declaradas  dentro  de  la  clase  no  pueden  hacer  referencia  a  otras  variables.  Fuera  de  la  clase  si  se  pueden  asignar  otros  valores:  

$miModelo  =  “Toyota”;  Class  Automovil{        //Correcto:        public  sta4c  $modelo;        //Incorrecto:        public  sta4c  $modelo  =  $miModelo;  }  Automovil::$modelo  =  $miModelo;  

Esta  limitación  se  asignación  se  debe  a  que  el  intérprete  4ene  que  conocer  cuál  es  el  valor  de  todas  las  propiedades  de  una  clase  al  momento  de  leer  el  código.  

EjemploSelf.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   28  

$a  y  $b  son  copias  dis4ntas,  permi4endo  así  que  $a  tenga  una  propiedad  ‘modelo’  que  es  suya  propia  y  dis4nta  de  la  propiedad  ‘modelo’  de  la  variable  $b.  

EjemploThisCorrecto.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   29  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   30  

EjemploThisIncorrecto.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   31  

El  constructor  permite  generar  un  estado  inicial  del  objeto  que  se  adapte  a  los  requerimientos.  Aquí  nos  interesa  guardar  los  dos  parámetros  que  se  le  pasan  al  constructor,  posiblemente  para  u4lizarlos  después.  

Constructor.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   32  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   33  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   34  

Resultado  del  ejercicio.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   35  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   36  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   37  

Ahora  la  clase  Camion  4ene  las  tres  propiedades:  $modelo,  $marca  y  $ejes.  

HerenciaBasico.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   38  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   39  

Esta  es  una  declaración  completamente  equivalente  a  la  anterior,  sólo  que  no  se  ex4ende,  sino  que  se  crean  directamente  en  la  clase.  

HerenciaBasicoExplicacion.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   40  

HerenciaSobrescritura.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   41  

Cabe  destacar  que  si  se  sobrescribe  un  método  ya  existente,  el  nuevo  método  debe  tener  la  misma  firma  que  la  del  padre  (debe  recibir  los  mismos  parámetros).  Si  esto  no  ocurre,  se  genera  un  error  de  nivel  E_STRICT.  El  único  método  para  el  cual  esto  no  aplica  es  el  constructor.  El  constructor  puede  redefinir  los  parámetros  que  requiere.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   42  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   43  

Resultado  del  ejercicio.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   44  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   45  

HerenciaConstructores.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   46  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   47  

HerenciaInvocarAnulados.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   48  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   49  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   50  

Resultado  del  ejercicio.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   51  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   52  

RestringirAcceso.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   53  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   54  

RestringirAccesoUso.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   55  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   56  

RestringirAccesoMetodos.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   57  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   58  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   59  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   60  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   61  

Instanceof.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   62  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   63  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   64  

ClasesAbstractas.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   65  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   66  

ClasesAbstractasFiltroLetras.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   67  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   68  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   69  

ClasesAbstractasFiltroNumeros.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   70  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   71  

Interfaces.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   72  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   73  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   74  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   75  

Resultado  del  ejercicio.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   76  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   77  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   78  

ExcepcionesIntroduccion.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   79  

Hablar  sobre  el  relanzado  de  excepciones  (tercer  parámetro)  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   80  

Las  excepciones  manejan  un  mensaje  y  un  código  de  error  que  son  propiedades  del  objeto  Excep4on  

ExcepcionesCodigo.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   81  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   82  

Resultado  del  ejercicio.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   83  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   84  

ExtendiendoExcepciones.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   85  

Hablar  sobre  el  relanzado  de  excepciones  (tercer  parámetro)  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   86  

Explicar  que  se  cumple  instanceof  Excep4on  

AtrapandoExcepciones.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   87  

En  este  ejemplo  ambos  bloques  catch  atrapan  la  excepción  porque  $e  es  instancia  tanto  de  Excep4on_Bd  como  de  Excep4on.  

ExcepcionesAnidadas.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   88  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   89  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   90  

MetodosFinales.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   91  

ClasesFinales.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   92  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   93  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   94  

MetodoDestruct.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   95  

MetodoCall.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   96  

MetodoCallSta4c.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   97  

MetodoGet.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   98  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   99  

Resultado  del  ejercicio.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   100  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   101  

MetodoSet.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   102  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   103  

Resultado  del  ejercicio.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   104  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   105  

MetodoIsset.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   106  

MetodoUnset.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   107  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   108  

Serialize.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   109  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   110  

MetodoSleep.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   111  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   112  

MetodoWakeup.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   113  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   114  

MetodoToString.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   115  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   116  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   117  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   118  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   119  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   120  

MetodoSetState.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   121  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   122  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   123  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   124  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   125  

TiposReferencias.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   126  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   127  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   128  

ClonarObjetosReferencias.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   129  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   130  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   131  

MetodoClone.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   132  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   133  

Resultado  del  ejercicio.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   134  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   135  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   136  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   137  

MetodoClone.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   138  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   139  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   140  

Resultado  del  ejercicio.  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   141  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   142  

MetodoClone.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   143  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   144  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   145  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   146  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   147  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   148  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   149  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   150  

MetodoClone.php  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   151  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   152  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   153  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   154  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   155  

Curso  PHP  Básico  

©  Curso  creado  por  Enrique  Areyán.   156