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
>