[解決済み] PHP - クラス内部で定数を定義する
2022-02-03 06:05:17
質問
クラス内で定数を定義し、クラスコンテキストで呼び出されたときのみ表示されるようにするにはどうすればよいですか?
というような
Foo::app()->MYCONSTANT;
(のように呼び出された場合)。
MYCONSTANT
無視される)
どのように解決するのですか?
参照 クラス定数 :
class MyClass
{
const MYCONSTANT = 'constant value';
function showConstant() {
echo self::MYCONSTANT. "\n";
}
}
echo MyClass::MYCONSTANT. "\n";
$classname = "MyClass";
echo $classname::MYCONSTANT. "\n"; // As of PHP 5.3.0
$class = new MyClass();
$class->showConstant();
echo $class::MYCONSTANT."\n"; // As of PHP 5.3.0
この場合、エコー
MYCONSTANT
を出力します。
常数
の名前を文字列に変換したものです。
"MYCONSTANT"
.
エディテージ - おそらく、あなたが求めているものは、これでしょう 静的プロパティ / 変数 :
class MyClass
{
private static $staticVariable = null;
public static function showStaticVariable($value = null)
{
if ((is_null(self::$staticVariable) === true) && (isset($value) === true))
{
self::$staticVariable = $value;
}
return self::$staticVariable;
}
}
MyClass::showStaticVariable(); // null
MyClass::showStaticVariable('constant value'); // "constant value"
MyClass::showStaticVariable('other constant value?'); // "constant value"
MyClass::showStaticVariable(); // "constant value"
関連
-
[解決済み] SAJAXは死んだか?何を置き換えるべきか?
-
[解決済み】In_arrayが動作しない。
-
[解決済み] mysqli_fetch_assoc() は、パラメータ 1 が mysqli_result であることを期待し、boolean が与えられる [重複] 。
-
[解決済み] PHPで配列から要素を削除する
-
[解決済み] PHPでSQLインジェクションを防ぐにはどうしたらいいですか?
-
[解決済み] Pythonで静的なクラス変数は可能ですか?
-
[解決済み] Pythonで定数を作成するにはどうすればよいですか?
-
[解決済み】PHPパスワードのハッシュとソルトの安全性について
-
[解決済み】静的定数文字列(クラスメンバ)
-
[解決済み] リファレンス - このシンボルはPHPで何を意味するのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】「セッションキャッシュリミッターを送信できません - ヘッダーはすでに送信されています」【重複】。
-
[解決済み】DateTimeクラスのオブジェクトを文字列に変換できない
-
[解決済み】php, mysql - データベースへの接続数が多すぎるエラー
-
[解決済み】Apache + PHPで「ヘッダの前にスクリプトの出力が終了する」件
-
[解決済み] SQLSTATE[HY093]: 無効なパラメータ番号: パラメータが定義されていません
-
[解決済み] 警告:mysqli_fetch_array()は、パラメータ1がmysqli_resultであることを期待する、オブジェクトはで指定された。
-
[解決済み】SSLピア証明書またはSSHリモートキーがOKでなかった
-
[解決済み】Wordpressの子テーマのstyle.cssが効かない。
-
[解決済み] Uncaught Error: 未定義の関数 mysql_escape_string() の呼び出し。
-
[解決済み] 致命的なエラーです。mysqli_result 型のオブジェクトを使用できません [終了] 。