Code Fix

中級staticプロパティを self:: なしで参照すると別の変数として扱われる › パターン1

staticプロパティを self:: なしで参照すると別の変数として扱われる

クラス内からstaticプロパティにアクセスするには self::$prop のように書く必要があります。

 1  <?php
 2  class Counter {
 3      public static int $count = 0;
 4      public function increment() {
 5          ______________++;
                   ^
 6      }
 7  }
 8  $c = new Counter();
 9  $c->increment();
10  $c->increment();
11  echo Counter::$count;
出力: Warning: Undefined variable $count in main.php on line 5 Warning: Undefined variable $count in main.php on line 5 0期待: 2 (Warningが出るだけで実行は止まりません)

空欄を埋めて実行を通す

広告
広告スロット(未設定)

staticプロパティを self:: なしで参照すると別の変数として扱われる

$propとだけ書くと、staticプロパティとは無関係のローカル変数として扱われ、Warningが出ます。

このエラーの解説と類題をまとめて見る →

広告
広告スロット(未設定)