За последние 24 часа нас посетили 49996 программистов и 1758 роботов. Сейчас ищут 992 программиста ...

Статика

Тема в разделе "PHP для новичков", создана пользователем super-php, 19 мар 2013.

  1. super-php

    super-php Активный пользователь

    С нами с:
    8 мар 2013
    Сообщения:
    35
    Симпатии:
    0
    Читаю про статические функции, там пример такой:


    Код (Text):
    1. <?php
    2. class test{
    3.     const POW = 2;
    4.     static $sumlength = 0;
    5.     static function length($s) {
    6.         $len = strlen($s);
    7.         self::$sumLength +=$len;
    8.         return $len;
    9.     }
    10.     static function poweredLength($s){
    11.         $len = self::length($s);
    12.         return pow($len, self::POW);
    13.     }
    14. }
    15.  
    16. echo test::length('abcd').'<br />';
    17. echo test::poweredLength('abcd').'<br />';
    18. ?>

    Выдает такую ошибку:
    Код (Text):
    1. Fatal error: Access to undeclared static property: test::$sumLength in D:\server\super-php\test.ru\www\index.php on line 7
    Не работает наверное self, как его включить?
     
  2. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
    Имена переменных в PHP чувствительны к регистру.
    $sumlength - одна переменная
    $sumLength - совсем другая