elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  ¿Llamar a una función que está dentro de una clase?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: ¿Llamar a una función que está dentro de una clase?  (Leído 28,229 veces)
Servia


Desconectado Desconectado

Mensajes: 347


Ver Perfil
¿Llamar a una función que está dentro de una clase?
« en: 28 Marzo 2009, 13:23 »

No puedo creer que no esté en algun tuto de aquí, en el buscar no me salió nada así que como lo hago para llamar a una función que se encuentra dentro de una class?

Código
  1. <?php
  2. class prueba1{
  3. function irf(){}
  4. function fc5(){
  5. }
  6. function rastrear($ip, $destino){
  7. }
  8. }
  9. $own=$prueba1->fc5();
  10. echo $own;
  11. ?>

De esa forma me dice que
Fatal error: Call to a member function fc5() on a non-object.


En línea

eLank0
eLhAcKeR r00Lz


Desconectado Desconectado

Mensajes: 1.062



Ver Perfil WWW
Re: ¿Llamar a una función que está dentro de una clase?
« Respuesta #1 en: 28 Marzo 2009, 14:03 »

Tendrías que crear un objeto de la clase en cuestión y luego usar los métodos de la clase.

s2


En línea

Servia


Desconectado Desconectado

Mensajes: 347


Ver Perfil
Re: ¿Llamar a una función que está dentro de una clase?
« Respuesta #2 en: 28 Marzo 2009, 14:59 »

Me podrías pasar la url de un tuto para ello?
En línea

^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: ¿Llamar a una función que está dentro de una clase?
« Respuesta #3 en: 28 Marzo 2009, 15:13 »

Mas bien Servia no se trata de un tuto de POO  en PHP, sino de la forma real como trabaja la POO en cualquier lenguaje que tiende a ser la misma.

No tienes claro  el concepto de POO y sino tienes eso claro, de poco sirve explicarte como realizar algo y vayas en la vida realizandolo como un robot memorizadamente pero sin saber a ciencia cierta porque debo realizar eso así....

Yo te recomendaria que leas un tuto tecnico sobre que es Orientado a Objetos para que puedas comprender sobre el tema. Sobre tu peticion, si conocieras sobre la POO sabrias que tienes que declarar un objeto nuevo que se encargue de instanciar los metodos que contiene la clase de la cual creaste el objeto nuevo.

Código
  1.  
  2. <?php
  3.  
  4. class prueba1{
  5.  
  6. public function irf(){
  7.  
  8. }
  9.  
  10. public function fc5(){
  11.  
  12.    echo "Hola Mundo<br>";
  13. }
  14.  
  15. public function rastrear($ip, $destino){
  16.  
  17. }
  18. }
  19.  
  20. $own = new prueba1();
  21. $own->fc5();
  22.  
  23. ?>
  24.  
  25.  

Todo lo que esta dentro de una clase por defecto es privado he inacesible al codigo externo a no ser que declares las cosas como public dentro de la clase, así podrias llamar sus objetos sin problema.
« Última modificación: 28 Marzo 2009, 15:15 por ^TiFa^ » En línea

Servia


Desconectado Desconectado

Mensajes: 347


Ver Perfil
Re: ¿Llamar a una función que está dentro de una clase?
« Respuesta #4 en: 28 Marzo 2009, 16:02 »

Gracias, pues si puedes pásame un tuto que creas que está bien :P
En línea

cassiani


Desconectado Desconectado

Mensajes: 978


« Anterior | Próximo »


Ver Perfil WWW
Re: ¿Llamar a una función que está dentro de una clase?
« Respuesta #5 en: 28 Marzo 2009, 17:31 »

o.O

pues ya te han dicho chico, public ;) lo demás es leer por aquí o por allá ..
En línea

Servia


Desconectado Desconectado

Mensajes: 347


Ver Perfil
Re: ¿Llamar a una función que está dentro de una clase?
« Respuesta #6 en: 28 Marzo 2009, 18:02 »

Ahora tengo otro problemilla con las funciones :(
Código
  1. <?
  2. function vaciar(){
  3.  
  4. }
  5. }
  6. ?>
  7.  <label>
  8.  <input type="button" onclick="<? $vaciar="hazlo"; ?> name="Submit" value="Vacíar Papelera" />
  9.  </label>
  10.  </p>
  11. <p>
  12. <?
  13. if($vaciar == "hazlo") {
  14. vaciar();
  15. }
  16. ?>

Se ejecuta aunque no se pulse el botón, que hago mal?
En línea

Spider-Net


Desconectado Desconectado

Mensajes: 1.165


Un gran poder conlleva una gran responsabilidad


Ver Perfil WWW
Re: ¿Llamar a una función que está dentro de una clase?
« Respuesta #7 en: 28 Marzo 2009, 18:59 »

Pues lo que haces mal es intentar programar en un lenguaje sin estudiarlo antes. Está claro que no tienes nada claro ni como funciona PHP ni como funciona la programación orientada a objetos ni siquiera el html así que antes de empezar a programar deberías empezar por estudiar unos cuantos tutoriales.
Lo que estás haciendo es dar palos de ciego... pones algo y pruebas a ver si funciona y si no lo hace vienes al foro a que te digan como se hace bien y esto no funciona así.
En línea

eLank0
eLhAcKeR r00Lz


Desconectado Desconectado

Mensajes: 1.062



Ver Perfil WWW
Re: ¿Llamar a una función que está dentro de una clase?
« Respuesta #8 en: 28 Marzo 2009, 20:25 »

Cualquier tutorial de POO en PHP te servirá...
En línea

^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: ¿Llamar a una función que está dentro de una clase?
« Respuesta #9 en: 28 Marzo 2009, 20:53 »

Se supone que tiene que ejecutarse la funcion, porque acaso no la haz colocado como primera opcion dentro de tu codigo?????  :-\ 

Tampoco vayas a pretender que colocando la funcion debajo del codigo html y llamandola dentro del html te va a funcionar....

Como bien dice Spider-Net y como te he venido diciendo yo misma, sino tienes el concepto de un tema es imposible que lo manejes. La programacion no es precisamente algo de observar por arriba uno o dos ejemplo de codigo y ya pensarse yo puedo hacer eso y comenzar a escribir cosas similares sin saber a ciencia cierta que se esta realizando en realidad....

Yo siendo tu, antes de ponerme a tirar lineas de codigo sin saber nisiquiera porque si coloco una funcion de cabecera se ejecuta esta aun sin yo llamarla... que eso ya es mucho decir  :¬¬  lee amigo, leer no hace mal a nadie, y todo en la vida tiene instrucciones de manejamiento no hay nada por mas inteligentes que seamos que manejemos de primera sin conocer las instrucciones.
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines