簡體   English   中英

PHP-在類函數中訪問對象名稱

[英]PHP - Accessing object name within a class function

這里的第一個問題。 請原諒新手錯誤。

我希望能夠在函數中引用對象名稱。

讓我們想象一個類中的函數是display_report()。 我使用以下代碼調用對象$ jan2011的函數:

$jan2011->display_report(); 

進入display_report()函數后,我可以將對象變量稱為$ this-> date或$ this-> title,其中$ date和$ title都是類中的變量。

但是如何確定在display_report()函數中被調用的對象是$ jan2011? 僅僅使用$ this似乎是不允許的。

我想做的是創建一個像這樣的變量:

 $name = "W_".$this."_7";

我希望將$ name設置為W_jan2011_7(或者也許是W_ $ jan2011_7),但是它不起作用。

任何幫助,將不勝感激! 謝謝。

一般來說,您不能; 在某些情況下,變量甚至都沒有名稱。 想像:

function foo()
{
    ...
    return new Report();
}

foo()->display_report();

我建議給您的班級添加一個name字段。

您不能從對象內部訪問引用名稱,因為它們是兩個完全不同的上下文。 您采用的方法不符合OO,請嘗試在報告類中放置一個屬性(例如“ name”),並重寫__toString方法以輸出對象的字符串表示形式(有關__toString的更多信息,請參見php文檔) )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM