Curso POO: Clase 2 Parametros de las class y su funcion

Tema en 'Programación & Programación Web' iniciado por cavoso, 6 Sep 2011.

  1. cavoso

    cavoso Usuario Casual nvl. 2
    187/244

    Registrado:
    31 May 2008
    Mensajes:
    2.727
    Me Gusta recibidos:
    13
    antes de comenzar a sugerencia de Aguil@ les recuerdo que este curso no es para principiantes en php asi que tengan ojo al momento de querer aprender tambien a ejemplo de VenenoxHC colocare los codigos de php con los colores correspondiente a cada uno a diferencia del negro que lo colocare en blanco ya que sino no lo van a ver en el foro.

    codigos para recordar:

    especificacion de colores:

    preguntas de la clase anterior:

    ahora empezamos con el curso.

    las $this-> son parametros que sirven para llamar variables dentro de la class, estos tambien pueden llamar funciones pero solo dentro de la misma class
    ej:
    <?
    class ejemplo{
    private $dia;
    private $hora;
    private $persona
    private function dia($d){
    $this->dia=$d;
    }
    private function hora($h){
    $this->hora=$h;
    }
    private function saludo($p){
    $this->persona=$p;
    echo 'Hola '.$this->persona.' es el dia '.$this->dia.' y son las '.$this->hora;
    }
    }
    ?>
    como pueden apreciar utilizando las $this-> he mesclado todas las funciones que he usado anterior mente la funciones se usan de forma normal ahora si quisiera llamar a una funcion puedria hacerlo con el $this-> de la sigiente forma:
    $this->funcion(); //funcion es el nombre de la funcion dentro de la class que utilizamos
    tengan en cuenta que ";" (punto y coma) es para el cierre


    los atributos public, privete y protected sirven para darle a las funciones y a las variables siertas proteciones contra la modificacion externa
    ej: utilizando la misma class anterior y previamente iniciada como $saludo

    $saludo->persona="juan"; /* esto dara error ya que la variable persona esta configurada como privada lo que hace que modificarla de esta manera sea imposible */ en el caso de que la variable persona ubiera sido publica (public) se ubiera podido modificar de esta forma, considerando esto pueden pensar que la mejor manera de trabajar con las variables de una class es colocandolas como privadas (private) sin embargo si las clas se quieren eredar al estar como privada estas no podran ser eredadas por la otra clas y produciran error sin embargo para que esto no ocurra se les puede colocar el atributo protected el cual impide que sean modificadas de forma externa pero permite eredarse a otra class.

    otro parametro que es muy util dentro de las class es la funcion __construct la cual permite construir la class con variables fijas en cada objeto como lo iso El Fin en su tarea, lo que el iso fue lo sigiente:
    y como pueden ver en su codigo para mostrar la edad es mas pequeño que el de los demas que isieron la tarea ya que la funcion construct permitio que el agregara una variable en el mismo instante en el que inicia el objeto.

    lo unico necesario para que la funcion construct funcione es escribirla bien y saber especificamente que es lo que van a hacer dentro de ella. la funcion constructo se escribe asi: funcion __construct(){ ya saben que dentro del () se colocan las variables que quiern agregar para la funcion, yo en lo personala utilizo esta funcion para la class de mysql para agregarle los datos de conexion a la base de datos y de paso para iniciar la conexion a esta.

    y lo ultimo para terminar esta clase es lo que el mismo VenenoxHC
    agrego en la clase anterior, aqui les dejo la cita de lo que el dijo: (ya que no necesita explicacion)

    en esta clase no hay tarea ya que no la pescaron mucho en la clase enterior.
    espero que les guste y hasta la proxima clase
     
  2. Aguil@

    Aguil@ Usuario Habitual nvl.3 ★
    197/244

    Registrado:
    10 Oct 2007
    Mensajes:
    13.935
    Me Gusta recibidos:
    38
    excelente el medio trabajo hacer esto ...igual como comentario o apreciacion ..podrias usar el punto bajo el simbolo:
    " [​IMG] " en modo avanzado para escribir(o pegar) tus codigos en una especie de "cita" ;) asi ...
    Insertar CODE, HTML o PHP:
    [COLOR=#000000]<?
    echo "hola";
    ?>[/COLOR]
    eso si al parecer tiene un problema esta forma de citar , cuando quieras controlar en "vista previa" no se ve el contenido esta todo en negro ...pero si "publicas" sale bien ...es solo una idea ;)

    mientras mas leo, mas me cuesta y comprendo ...no me apetece ser programador :D mejor diseñador ! jajajaj (respect a los que programan )
     
  3. cavoso

    cavoso Usuario Casual nvl. 2
    37/41

    Registrado:
    31 May 2008
    Mensajes:
    2.727
    Me Gusta recibidos:
    13
    gracias por la idea pero no quiero mostrar el codigo con code xk encuetro que para aquellos que vean por primera ves el codigo no van a saber que es una funcion, variable, texto o ordenes asi que colocandole los colores es mejor asi los usuarios pueden saber que hay mas que solo lineas escritas implicadas en el codigo
     
  4. Rigorap87

    Rigorap87 Usuario Habitual nvl.3 ★
    197/244

    Registrado:
    26 Jul 2009
    Mensajes:
    31.817
    Me Gusta recibidos:
    24
    Buena compadre, muy productiva la clase, aunque la termine de ver recién porque me salieron cachos en la pega... Ojala siga así aportando y contribuyendo a la Zona.
     
  5. VenenoxHC

    VenenoxHC Usuario Casual nvl. 2
    37/41

    Registrado:
    30 Nov 2008
    Mensajes:
    1.780
    Me Gusta recibidos:
    1
    hola, quisiera hacer una pregunta profeeeee!

    cuantos constructores se pueden hacer en una clase?
    y como funcionaria aca

    $juan=new Persona(1984);<----ya que aki se manda el valor al constructor

    de antemano muchas gracias
     
  6. cavoso

    cavoso Usuario Casual nvl. 2
    37/41

    Registrado:
    31 May 2008
    Mensajes:
    2.727
    Me Gusta recibidos:
    13
    bueno el constructo (__construct) solo se puede colocar una vez ya que como su nombre lo indica sirve para construir el objeto, solo se puede usar una ves ya que con el se inicia el objeto, claro que se puede iniciar cuantas veces se quiera mintras sen en objetos distintos (solo 1 vez por objeto) y para utilizar los valores que se ingresan atraves del constructor solo debes agregarlos en un $this-> ej:


    <?
    class persona{
    private $anio;
    public function __construct($year){
    $this->anio=$year
    }
    }

    ?>


    el $this->anio que cree lo puedes utilizar en otra funcion dentro de la class si asi lo quieres y de esta forma pasar dicha variable entre las distintas funciones si se requiren asi puedes pasar el año que ingresaste por el constructor a la funcion mostrar por ejemplo y ahi mostar los datos y despues simplemente agregando la funcion mostrar en la pagina de muestra
     
  7. Dozzie

    Dozzie Usuario Nuevo nvl. 1
    17/41

    Registrado:
    3 May 2006
    Mensajes:
    153
    Me Gusta recibidos:
    0
    Se agradece compadre por la respuesta y por avisar que estaba listo la 2ª parte =)
    Empezando a usar construct, también utilizando las subclases...
    Esperando el 3º
    nos vemos
     
  8. VenenoxHC

    VenenoxHC Usuario Casual nvl. 2
    37/41

    Registrado:
    30 Nov 2008
    Mensajes:
    1.780
    Me Gusta recibidos:
    1
    GRACIAS me quedo clarito...
     
  9. Lion

    Lion Usuario Nuevo nvl. 1
    17/41

    Registrado:
    10 Ago 2009
    Mensajes:
    278
    Me Gusta recibidos:
    16
    vale gracias !
     
  10. cavoso

    cavoso Usuario Casual nvl. 2
    37/41

    Registrado:
    31 May 2008
    Mensajes:
    2.727
    Me Gusta recibidos:
    13
  11. Aguil@

    Aguil@ Usuario Habitual nvl.3 ★
    197/244

    Registrado:
    10 Oct 2007
    Mensajes:
    13.935
    Me Gusta recibidos:
    38
    Muchas gracias !
     
  12. Merovingio

    Merovingio Usuario Habitual nvl.3 ★
    187/244

    Registrado:
    20 Mar 2009
    Mensajes:
    33.491
    Me Gusta recibidos:
    6
    se agradece el tuto