我試圖找到一種方法來使用print_r()在我所有的現有對象上,而無需手動將它們作爲參數傳遞給函數。目前用於調試和這樣做:PHP動態引用對象
function($obj1 as null){
// insert styling here
print_r(get_object_vars($obj1));
// insert more styling
}
現在,我必須使用這個函數爲我的每個頁面上的每個對象。這變得很重要。如果只有一個函數會使用某種集合來使用get_object_vars輸出對象變量,那將會很不錯。
在寫這篇文章時,我想到了爲每個對象創建一個包含變量的類。然後在每個類的__construct中,使用該對象將自身分配給新類。但是,這將是很多工作,似乎效率低下。
像上面的帖子,使用變量變量($$),不幸的是它不工作。這是我在提出問題之前使用get_declared_classes函數嘗試的原始方法。 <? 的foreach(get_declared_classes()作爲$的ObjectName){ ?>
<? } ?> – Raythe
它以什麼方式不起作用?我認爲你的版本的問題是,get_declared_classes給你一個類的列表,而不是變量。如果你有一個名爲$ var的類型爲MyClass的變量,那麼MyClass將出現在get_declared_classes中,但不是var。因此變量變量將會尋找$ MyClass,但是不會找到它。 – gandaliter