示例中的PHP错误

时间:2014-10-11 14:06:08

标签: php

[我现在正在学习PHP并使用这个波兰语网站:] [1] http://phpkurs.pl/ponowne-uzycie-kodu/

我坚持这个例子:

<?php

class Koszyk
{
var $artykuly;

   function dodaj($numer, $ilosc)
   {
      $this->artykuly["$numer"] += $ilosc;
   }

   function usun($numer, $ilosc)
   {
      if($this->artykuly["$numer"]>$ilosc)

         $this->artykuly["$numer"]-=$ilosc;

      else

         $this->artykuly["$numer"]=0;
   }

   function wyswietl()
   {
      while(list($k, $v) = each($this->artykuly))
         if($v>0)
            echo "Artykul nr $k - $v sztuk<br>";
   }
}

$koszyk = new Koszyk;
$koszyk->dodaj('20', 2);
$koszyk->dodaj('12', 4);
$koszyk->dodaj('20', 5);
$koszyk->usun('12', 4);
$koszyk->wyswietl();
?>

我知道var不是必需的,因为它在PHP 4中使用,但代码不起作用,我收到错误。我无法弄清楚问题是什么。我认为这很简单,但它是一个例子,所以它应该有效。

1 个答案:

答案 0 :(得分:0)

在您的代码中进行 它对我有用

   var $artykuly   =   array();

    function dodaj($numer, $ilosc)
       {
        if(!isset($this->artykuly[$numer])){
             $this->artykuly[$numer]="";
           }

          $this->artykuly[$numer] += $ilosc;
       }

仅在声明可以使用

后才声明$this->artykuly[$numer]

$this->artykuly[$numer] += $ilosc;声明