2016-11-30 16 views
2

код возвращает неопределенные переменные, я думаю, что-то не так с функцией, которую я написал, он должен был разделить $value и $splitfeeООП PHP цена калькулятор

class Product { 
    public $name; 
    public $value; 
    public $price; 
    public $splitfee; 

    function split() { 
     $this->value->splitfee = $this->$value/$splitfee; 
    } 
} 

$product_one = new Product(); 
$product_one->name = "potato"; 
$product_one->price = 100; 


$product_two = new Product(); 
$product_two->name = "tomato"; 
$product_two->value = 200; 
$product_two->splitfee = 200; 

$product_three = new Product(); 
$product_three->name = "auto"; 
$product_three->price = 300; 

echo $product_one->name . " is " . $product_one->price . " $" . "<br />"; 
echo $product_two->name . " is " . $product_two->split() . " $" . "<br />"; 
+0

Неправильное функционирование тела. Что здесь сплит? –

+0

это плата, которую нужно было разделить по стоимости продукта, например, 200/30, но я вижу, что я установил splitfee на 200 –

+0

@ NadanMarenković http://phpio.net/s/1gkv –

ответ

0

Вы можете исправить метод split() так, что она возвращает значение , Это позволит вашему встроенному вызову распечатать что-либо.

function split() { 
    return $this->value/$this->splitfee; 
} 

Тогда код будет печатать:

potato is 100 $ tomato is 1 $

+0

Спасибо, я попробую позже. –

+0

Он работает! Благодаря! –

+0

@ nadanarenković отлично! благодарю вас за то, что вы выбрали это как решение, чтобы помочь любым другим, у кого эта проблема. – WEBjuju

0

Попробуйте это, если я правильно понял вашу логику.

class Product { 
    public $name; 
    public $value; 
    public $price; 
    public $splitfee; 

    function split() { 
     return $this->value/$this->splitfee; 
    } 
}