<?php
class Kunde
{
public $knr;
public $navn;
public $adr;
public $tlfnr;
public $kurv = array();
function __construct($nr,$n,$a)
{
$this->knr = $nr;
$this->navn = $n;
$this->adr = $a;
}
function LeggTilVare($vnavn,$vantall,$vpris)
{
$this->kurv[]=new Vare($vnavn,$vantall,$vpris);
}
function VisVarer()
{
for($i=0; $i < count($this->kurv); $i++)
{
$text+= $this->kurv[$i]->getInfo() . "<br/>";
}
return $text;
}
class Vare
{
public $varenavn;
public $antall;
public $pris;
function __construct($navn,$antall,$pris)
{
$this->varenavn=$navn;
$this->antall=$antall;
$this->pris=$pris;
}
function getInfo()
{
return $this->varenavn.", ".$this->antall." st, ".$this->pris.",-";
}
}
$kunde1 = new Kunde(1,"Andreas","Gronland");
$kunde1->LeggTilVare("Kjekks", 10, 10.00);
我习惯用 Java 编程,但现在正在学习 PHP。
我的函数VisVarer()
只会返回"0"
,没有别的。我想这与getInfo()
另一个类的另一个函数内部的调用有关,或者我的 for 循环有问题。
也许这是编写此类程序的错误方法?
echo $kunde1->kurv[0]->getInfo(); // returns "Kjekks, 10 st, 10"
echo $kunde1->VisVarer(); // returns "0"