Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

PHP OO palabras clave dentro de una clase

Estas en el tema de palabras clave dentro de una clase en el foro de Frameworks y PHP orientado a objetos en Foros del Web. hola. estoy viendo un tutorial sobre POO en PHP. en un ejemplo que vi y lo voy a colocar: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original ...
  #1 (permalink)  
Antiguo 26/10/2011, 09:20
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 787
Antigüedad: 16 años
Puntos: 7
Pregunta palabras clave dentro de una clase

hola. estoy viendo un tutorial sobre POO en PHP. en un ejemplo que vi y lo voy a colocar:

Código PHP:
Ver original
  1. class Persona
  2. {
  3.    
  4.   private $nombre;
  5.  
  6.   public function inicializar($nom)
  7.   {
  8.     $this->nombre=$nom;
  9.   }
  10.  
  11.   public function imprimir()
  12.   {
  13.     echo $this->nombre;
  14.     echo '<br>';
  15.   }
  16.  
  17. }

porque se colocan palabras clave como public dentro de la clase ?. es necesario colocar la palabra clave para declarar a un metodo o es por la version del php ?. lo mismo en private, no se debe colocar var ?.

saludos.

Última edición por esaenz22; 26/10/2011 a las 09:23 Razón: correccion del texto.
  #2 (permalink)  
Antiguo 26/10/2011, 09:27
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 8 meses
Puntos: 194
Respuesta: palabras clave dentro de una clase

public significa que ese método puede ser accedido desde fuera de la clase, si fuese private por ejemplo solo tendrías acceso desde el interior de la clase

Ejemplo:

Código PHP:
Ver original
  1. $foo = new Persona();
  2. $foo->inicializar('Manolo');

Si inicializar fuese private, tendrías un error.
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #3 (permalink)  
Antiguo 26/10/2011, 09:35
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 787
Antigüedad: 16 años
Puntos: 7
Respuesta: palabras clave dentro de una clase

gracias por tu respuesta. si modifico la clase sin utilizar la palabra clave public, es aceptable para la version de php 4 ó 5 ?.

Código PHP:
Ver original
  1. class Persona
  2. {
  3.    
  4.   private $nombre;
  5.  
  6.   function inicializar($nom)
  7.   {
  8.     $this->nombre=$nom;
  9.   }
  10.  
  11.   function imprimir()
  12.   {
  13.     echo $this->nombre;
  14.     echo '<br>';
  15.   }
  16.  
  17. }

Si inicializar fuese private, tendrías un error. significa que si el metodo fuera privado, no me imprimiria el nombre de la persona ?.

saludos.
  #4 (permalink)  
Antiguo 26/10/2011, 09:50
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: palabras clave dentro de una clase

Para eso dejaron var para que sea compatible con PHP 4, pero en PHP 4 no se maneja la visibilidad como lo hace PHP 5, eso es novedad en PHP 5 (Como muchas cosas en POO). En PHP 4 no te va a funcionar ni public ni private ni protected. Simplemente se le mandaba var $nombre; y ya estaba me cansó de leer clases usando var... Como se les ocurre hacer esto jajaja (gracias a Dios cambió en PHP 5). Deberías ya pensar en PHP 5 para POO.

Cita:
Nota: La forma de declaración de una variable de PHP 4 con la palabra clave var todavía es soportado (como un sinónimo de public) por razones de compatibilidad. En PHP 5 antes de 5.1.3, su uso genera un Warning E_STRICT.
http://php.net/manual/es/language.oop5.visibility.php
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #5 (permalink)  
Antiguo 26/10/2011, 10:14
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 787
Antigüedad: 16 años
Puntos: 7
Respuesta: palabras clave dentro de una clase

he utilizado PHP como Programacion Estructurada y publique este tema porque estoy aprendiendo POO y de paso recordar como se crea una clase y un metodo. de todas maneras, gracias por la critica constructiva.

saludos.

Última edición por esaenz22; 26/10/2011 a las 10:15 Razón: correccion del texto.

Etiquetas: clase, clave, palabras
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:18.