2013-11-27 2 views
0

У меня есть это на моем файле классаИспользование переменной в другом классе?

class Bet {  
    private $Client; 
    private $Secret; 
    private $Server; 
    private $result; 
    private $Result; 
    public function Bet($Type, $Chance) {  
     $this->Client = md5(uniqid(rand(), true)); 
     $this->Secret = md5(uniqid(rand(), true)); 
     $this->Server = md5(uniqid(rand(), true)); 

     if($Type == 'auto') {  
       $hash = hash('sha512', $this->Client . $this->Secret . $this->Server); 
       $Result = round(hexdec(substr($hash, 0, 8))/42949672.95, 2); 

        if($Result < $Chance) { 
         $this->result = true; 
         return $Result; 
        } else { 
         $this->result = false; 
        return $Result;      
        }  
     } 

    } 
    /** 
    * @return boolean 
    */ 

    public function isReturnLessThanChance() { return $this->result; } 
    public function returnLucky() { return "4"; } } 

На мой другой файл я делаю

$bet = new Bet('auto', $chance); 
$lucky = $bet->returnLucky(); 

Я могу получить номер 4 (тестирование), но я не могу показаться, чтобы вернуться $ result

Как это сделать?

ответ

1

В методе конструкта, вы должны сделать $this->Result = $Result; вместо return $Result;,

затем использовать return $this->Result; в returnLucky().

И вам следует избегать использования переменной типа $result и $Result, что сбивает с толку.

+0

Я получил его для работы с вашим советом, что такое «метод contruct», если результат <случайные заявления? Я получил его работу, положив его в утверждение if. – user3026745

+0

@ user3026745 Метод с таким же именем класса 'Bet' является методом construt. Если вы используете php 5, лучше используйте '__construct'. – xdazz

+0

Я попытался поместить конструкцию в класс и функцию ставки, но я продолжал получать неопределенную переменную ошибку. Должен ли я назвать это по-другому? – user3026745

Смежные вопросы