Re: [PHP-ES] OOP + funciones heredadas entre funciones
[email protected] (Alexis Saucedo) Thu, 24 Apr 2014 16:22:34 -0300
| Newsgroups | php.general.es |
|---|---|
| Message-ID | <CAAu=vQeNcqmX+DhpirhuTUGt1wQNh2kv6exHHsdd12mQ-LwT-A@mail.gmail.com> |
Podrias por favor darme un ejemplo de esto Mauricio si no fuera molestia? no comprendo como anviarlo por cadena. Saludos y gracias! El 24 de abril de 2014, 15:40, Mauricio Tapia <[email protected]>escribió: > te diría que estas confundido ... > > Class MyClass{ > > var $prop1; > var $prop2 = 'prop 2'; > > public function GetValue($new){ > > $new = $this->prop1; > > } > > public function SetValue(){ > > echo $this->prop2. $new; > > } > } > > $data = new MyClass(); > $data->GetValue(PROPIEDAD UNO); > $data->SetValue(); > > > > 1.- creas el objeto > 2.- envías un dato PROPIEDAD UNO ( yo lo enviaría como cadena) > 3.- si envias una cadena para getvalue a travez de $new no sirve de nada > debido a que luego $new le asignas otro valor en ese caso prop1 que es nada. > 4.- por lo mimo el evento setvalue te dara error ya que $new estará como > no definida > > es mi modesta opinión > Saludos > > > > El 24 de abril de 2014, 14:22, Alexis Saucedo <[email protected]>escribió: > > gracias por responder Mauricio y si quisiera hacer algo asi?: >> >> Class MyClass{ >> >> var $prop1; >> var $prop2 = 'prop 2'; >> >> public function GetValue($new){ >> >> $new = $this->prop1; >> >> } >> >> public function SetValue(){ >> >> echo $this->prop2. $new; >> >> } >> } >> >> $data = new MyClass(); >> $data->GetValue(PROPIEDAD UNO); >> $data->SetValue(); >> >> Saludos! >> >> >> El 24 de abril de 2014, 15:10, Mauricio Tapia <[email protected]>escribió: >> >>> Hola >>> >>> El script de ejemplo me funciona, creo que debes corregir a mi parecer 2 >>> puntos que te faltan. >>> >>> en la línea >>> >>> echo "valor de funcion 1" $this->op1; >>> >>> agrega un punto que falta >>> >>> echo "valor de funcion 1 ".$this->op1; >>> >>> en la función GetValue lo mismo antes del $this agrega un . >>> >>> Saludos >>> Mauricio Tapia >>> atacamaworkbench.com >>> >>> >>> >>> El 24 de abril de 2014, 12:47, Alexis Saucedo <[email protected]>escribió: >>> >>> Buenas tardes estoy con un dilema y se que lo estoy haciendo mal pero aun >>>> no le encuentro la vuelta haber si me pueden dar una mano, en primer >>>> lugar >>>> necesito crear una clase dinamica por la cual cuando invoque las >>>> propiedades pueda llamar a una funcion. Intente en primer lugar llamar >>>> una >>>> propiedad dentro de una clase desde otra, quise hacer algo asi (lo estoy >>>> haciendo de memoria perdon si hay algun error): >>>> >>>> Class MyClass{ >>>> >>>> var $op1 = 'algo'; >>>> var $op2 = 'algo2'; >>>> >>>> public function SetValue(){ >>>> >>>> echo "valor de funcion 1" $this->op1; >>>> >>>> } >>>> >>>> public function GetValue(){ >>>> >>>> echo "esto es function GetValue" $this->op2 ."y esto es SetValue" >>>> $this->op1; >>>> >>>> } >>>> >>>> } >>>> >>>> $data = new MyClass(); >>>> $data->SetValue(); >>>> $data->GetValue(); >>>> >>>> esto no me arrojo ningun resultado, esto lo hice por que a lo que quiero >>>> aplicar es a algo asi: >>>> >>>> Class ConectClass{ >>>> >>>> var $host = 'localhost'; >>>> var $user = 'usuario'; >>>> var $pass = 'contraseña'; >>>> var $database = 'base de datos'; >>>> var $tabla; >>>> var $fila; >>>> >>>> Public Function ConectarDb($db){ >>>> >>>> $this->database = $db; >>>> >>>> mysql_connect("$this->host", "$this->user", "this->pass"); >>>> mysql_selectdb("$db"); >>>> >>>> } >>>> >>>> public function SetValue($table, $file){ >>>> >>>> $this->tabla = $table; >>>> $this->fila = $file; >>>> >>>> $query = mysql_query("SELECT $table FROM $this->database"); >>>> if($row=mysql_fetch_array()){ >>>> echo $row[$file]; >>>> } >>>> } >>>> >>>> } >>>> >>>> $data = new ConectClass(); >>>> $data->ConectClass(nombre de la base de datos); >>>> $data->ConectClass(nombre de la tabla); >>>> $data->ConectClass(nombre de la fila); >>>> >>>> mi idea es poder instanciar los objetos y agregar los campos, se que en >>>> este ultimo no lo etsoy haciendo correcto, solo me imagine que asi >>>> podria >>>> llegar a realizarlo, la idea es que se pueda entender mi punto, ¿alguno >>>> me >>>> podria desenredar esto?. >>>> >>>> Saludos y muchas gracias! >>>> >>> >>> >>> >>> -- >>> Atentamente >>> Mauricio Tapia Ortega >>> *atacamaworkbench.com <http://www.atacamaworkbench.com>* >>> Skype : atacamaworkbench >>> >> >> > > > -- > Atentamente > Mauricio Tapia Ortega > *atacamaworkbench.com <http://www.atacamaworkbench.com>* > Skype : atacamaworkbench >