Code Fix

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

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

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

 1  <?php
 2  class Log {
 3      public static array $entries = [];
 4      public function add($e) {
 5          _______________[] = $e;
                   ^
 6      }
 7  }
 8  $l = new Log();
 9  $l->add("start");
10  echo count(Log::$entries);
出力: 0期待: 1 (Warningすら出ません)

空欄を埋めて実行を通す

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

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

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

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

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