我被告知無法在PHP中的類中定義一個類。然而,在我自己的例子,這似乎工作已經我困惑:關於PHP OOP的更多信息 - 類內的類
class_test.php:
require('class_1.php');
new class_1
//Need $missing_variable here.
class_1.php
class class_1{
public function function_1(){
function callback_function(){
echo "A Callback";
$missing_variable = "Where Did I Go?";
}
require('class_2.php');
new class_2('callback_function');
}
public function __construct(){
$this->function_1();
}
}
class_2.php
class class_2{
public function __construct($callback){
echo "Hello World - ";
call_user_func($callback);
}
}
個
加載class_test.php打印出
Hello World - A Callback
問題:如何定義$missing_variable
,這樣我可以得到它,我需要它?
在未來的情況下,任何人也有類似的問題,但是不太可能,我想從鏈接到鍵盤下方,顯示從課後回顯的$ missing_variable:
再次感謝大家。
注:這是一個follow up。
一個函數是'需要在類中的另一個類......這是你的困惑的來源? – irrelephant
的確如此......但令我困惑的是,它不僅僅需要另一個類,它還需要另一個類,它使用自身的函數作爲第二個類中的回調函數.....我很困惑自己:(代碼在那裏...... –
原來我的主要誤解是,當你定義一個類或函數時,它存在於該範圍內,原來它是有條件的(只有在調用容器時才定義),但我自己對OOP有了更好的理解,謝謝大家!我在這裏選擇Kavi Siegel作爲編解碼器,並在另一個問題上解釋了一些很好的解釋,再次感謝! –