[解決済み] [Solved] PHP Fatal error: オブジェクトコンテキストでないときに$thisを使用する
2022-01-11 10:30:58
質問
コードは次のとおりです。
index.php
require_once('load.php');
load.php
require_once('class.php');
class.php :
class foobar {
public $foo;
public function __construct() {
global $foo;
$this->foo = $foo;
}
public function foobarfunc() {
return $this->foo();
}
public function foo() {
return $this->foo;
}
}
で class.php というエラーが発生します。
Fatal error: Using $this when not in object context in class.php on line ... (in this example it would be 11)
で
index.php
ロードしているのは、たぶん
foobarfunc()
このように
foobar::foobarfunc();
にもできますが
$foobar = new foobar;
$foobar->foobarfunc();
解決方法は?
<ブロッククオート私のindex.phpでは、多分このようにfoobarfunc()をロードしています。
foobar::foobarfunc(); // Wrong, it is not static method
にもなり得ますが
$foobar = new foobar; // correct
$foobar->foobarfunc();
スタティック・メソッドではないので、この方法でメソッドを呼び出すことはできません。
foobar::foobarfunc();
代わりに使用する必要があります。
foobar->foobarfunc();
しかし、静的なメソッドを作成した場合、次のようになります。
static $foo; // your top variable set as static
public static function foo() {
return self::$foo;
}
であれば、これを使うことができます。
foobar::foobarfunc();
関連
-
コマンドによるフォルダの簡単なインクリメンタルバックアップ(win/linux)
-
InstallShield でホスト名から IP アドレスを取得するコード
-
[解決済み] メインループの 'builtin_function_or_method' オブジェクトが反復可能でない
-
[解決済み】エラー。式はintegralまたはunscoped enum型でなければなりません。
-
[解決済み】ポインタと整数の比較を警告する
-
[解決済み] [Solved] libpthread.so.0: error adding symbols: コマンドラインからDSOが見つからない
-
[解決済み】Weird PHP error: 'Can't use function return value in write context'.
-
[解決済み] どのような場合に '$this' よりも 'self' を使うべきですか?
-
[解決済み] 変数を使用してオブジェクトのプロパティに動的にアクセスする
-
[解決済み] リファレンス - このシンボルは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 実装 サイバーパンク風ボタン
おすすめ
-
スクリプトとバッチ処理がひとつに
-
InstallShield でホスト名から IP アドレスを取得するコード
-
[解決済み] 式は変更可能なlvalueでなければならない
-
[解決済み】ValueError: shape mismatch: オブジェクトを1つの形状にブロードキャストできない
-
[解決済み】Jupyter Notebookが保存されない:postに'_xsrf'引数がない
-
[解決済み】 lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) でエラー : 'y' に NA/NaN/Inf, あらゆる方法を試したが解決しなかった。
-
[解決済み】コレクションが変更され、列挙操作が実行されないことがある。
-
[解決済み】dyld: ライブラリがロードされない ... 理由: 画像が見つからない
-
[解決済み】Nullableオブジェクトは値を持たなければならない?
-
[解決済み] [Solved] libpthread.so.0: error adding symbols: コマンドラインからDSOが見つからない