環境
php7
プログラム
これは、未定義とエラーが出てしまう。
関数はちゃんと定義してるし、メソッド内からの関数呼び出しなので$thisも
つけているのに。。。
hoge.php
$doProcess = "getData";
$this->doProcess();
function getData(){
echo "データなんてないんだよなぁ";
}
さすがにミスの仕方がひどすぎて草生えない。
次に、エラーが出なくなるプログラム。
クラスの関数を呼び出す際は「->」の後は「💲」はつけないが、
今回は可変関数ということで文字列から関数を呼び出す感じになるので、
「->」のあとに「💲」をつけることで、その文字列が認識されて、うまく呼び出せる
hoge.php
$doProcess = "getData";
$this->$doProcess();
function getData(){
echo "データなんてないんだよなぁ";
}
結果
ふぅ〜!呼び出せた!