Foros del Web » Programando para Internet » PHP »

PHP OO Por qué no anda el return?

Estas en el tema de Por qué no anda el return? en el foro de PHP en Foros del Web. Soy nuevo en esto del POO, así que no se enojen si es algo estupido. Gracias. Código PHP: <?php class  Web {     private  $_url ; ...
  #1 (permalink)  
Antiguo 16/10/2010, 18:42
 
Fecha de Ingreso: abril-2010
Ubicación: Argentina
Mensajes: 57
Antigüedad: 14 años
Puntos: 1
Por qué no anda el return?

Soy nuevo en esto del POO, así que no se enojen si es algo estupido. Gracias.

Código PHP:
<?php
class Web
{
    private 
$_url;

    public function 
__construct($url)
    {
        
$this->_url $url;
    }
    
    public function 
buscarImagenes()
    {
        
$contents file_get_contents($this->_url);
        if(
$contents){
            
$retorno 'La web esta ON.';
        }
        else{
            
$retorno 'La web esta OFF.';
        }
        return 
$retorno;
    }
}

$web = new Web('http://www.google.com.ar/');
$web->buscarImagenes();
  #2 (permalink)  
Antiguo 16/10/2010, 18:44
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: Por qué no anda el return?

Porque 'return', simplemente devuelve lo que le indiques, no lo imprime.

Con esto lo solucionas :

Código PHP:
Ver original
  1. $web = new Web('http://www.google.com.ar/');
  2. echo $web->buscarImagenes();

Nos vemos.
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #3 (permalink)  
Antiguo 16/10/2010, 18:50
Avatar de mc_pato  
Fecha de Ingreso: julio-2008
Ubicación: Casbas
Mensajes: 31
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Por qué no anda el return?

Sucede que lo que quiere el (estabamos conversando por msn) y el final tenía un echo $retorno;

Le sugerí este método, pero me porfia :P

Código PHP:
<?php 
if(isset($_GET['soy-curioso'])){ 
    
highlight_file('web.php'); 
    die; 


class 
Web 

    private 
$_url;
    private 
$_estado;

    public function 
__construct($url
    { 
        
$this->_url $url
    }
     
    public function 
checkStatus() 
    { 
        if(@
file_get_contents($this->_url)){ 
            
$this->_estado 'La web esta ON.'
        } 
        else{ 
            
$this->_estado 'La web esta OFF.'
        } 
        return 
$this->_retorno;
    } 
    
    public function 
getStatus()
    {
        return 
$this->_estado;
    }


$web = new Web('http://www.google.com.ar/'); 
$web->checkStatus(); 
echo 
$web->getStatus();
  #4 (permalink)  
Antiguo 16/10/2010, 18:53
 
Fecha de Ingreso: abril-2010
Ubicación: Argentina
Mensajes: 57
Antigüedad: 14 años
Puntos: 1
Respuesta: Por qué no anda el return?

Cita:
Iniciado por spider_boy Ver Mensaje
Porque 'return', simplemente devuelve lo que le indiques, no lo imprime.

Con esto lo solucionas :

Código PHP:
Ver original
  1. $web = new Web('http://www.google.com.ar/');
  2. echo $web->buscarImagenes();

Nos vemos.
GRACIAS :D
Va KARMA.

Cita:
Iniciado por mc_pato Ver Mensaje
Sucede que lo que quiere el (estabamos conversando por msn) y el final tenía un echo $retorno;

Le sugerí este método, pero me porfia :P

Código PHP:
<?php 
if(isset($_GET['soy-curioso'])){ 
    
highlight_file('web.php'); 
    die; 


class 
Web 

    private 
$_url;
    private 
$_estado;

    public function 
__construct($url
    { 
        
$this->_url $url
    }
     
    public function 
checkStatus() 
    { 
        if(@
file_get_contents($this->_url)){ 
            
$this->_estado 'La web esta ON.'
        } 
        else{ 
            
$this->_estado 'La web esta OFF.'
        } 
        return 
$this->_retorno;
    } 
    
    public function 
getStatus()
    {
        return 
$this->_estado;
    }


$web = new Web('http://www.google.com.ar/'); 
$web->checkStatus(); 
echo 
$web->getStatus();
Si patito querido, pero ya te dije por que no queria ese metodo :$:$

Etiquetas: return
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 23:49.