web-dev-qa-db-ja.com

なぜPHP private constを許可しないのですか?

内部実装で定数を使用することで恩恵を受けるクラスがありますが、これらの定数の可視性を制限したいと思います。 PHPがプライベート定数を許可しないのはなぜですか?これを達成する別の方法はありますか、またはPHPは私が無知である設計ミスのタイプを落とそうとしていますか?

69
leo

使用する private static プロパティ。

その場合、すべてのオブジェクトで同じ変数を使用し、そのスコープをネストに拡張する場合は、ゲッターメソッドを公開してその値を取得し、変数設定を制限できます。

58
sudhir chauhan

PHP 7.1では、実際のプライベート定数があります。

private const PRIVATE_CONST = 0;

詳細については、 Class Constant Visibility RFC を参照してください。

62
Jeroen De Dauw