PHP5.6で、
予めclass内で 「static public $huga1 = "";」 を宣言しておけば
関数内から該当の変数に値を格納することができますが
宣言なしですと Fatal error になってしまいます
宣言なしでエラーとならない記述方法を知っている方がおりましたら
ご教授いただきたく存じます
ちなみに::ではなく矢印演算子を使えば希望の動作は実現できますが
Hoge::XX と簡易に使用できるようにしたいので::を矢印演算子に変更はしたくありません
お忙しいところ恐縮ですがご確認よろしくお願い致します!
class Hoge { static public $huga1 = ""; public function hoge1() { self::$huga1 = "abc"; } public function hoge2() { self::$huga2 = "def"; } } $hoge1 = new Hoge(); $hoge1 = Hoge::hoge1(); //OK! $hoge2 = new Hoge(); $hoge2 = Hoge::hoge2(); //Fatal error: Access to undeclared static property
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/10 03:17
2017/04/10 03:21
2017/04/10 03:31