2012-11-23 27 views
4

我正在研究wordpress最近的研究並試圖挖掘如何處理查詢機制。
我碰到一個函數定義就這樣
function &get_post(&$post, $output = OBJECT, $filter = 'raw')
我還沒有看到過類似的和不知道的符號(&)必須做的地址什麼東西。(傳統思維運用符號的(&))。
我很天真,如果它的東西很簡單,請不要讓我失望。
任何人都可以對此提出自己的想法。它會幫助我前進。嘗試通過谷歌和文檔找到它,但沒有找到解決方案。
感謝在wordpress「function&get_post」中定義這樣的函數的含義

回答

4

在函數聲明的第一&導致PHP來return a reference$post上的&對您傳遞給函數的實際變量進行更改。

實際上我不清楚爲什麼要使用這些參考聲明。在我看來,這是對Wordpress部分進行優化的不正確嘗試,或者它更可能與PHP 4兼容。我認爲您可以忽略符合您的目的的&符號。

+0

感謝您的解釋。它意味着該函數在**&$ post **的上下文中有一個參數作爲參數。 – KillABug

+1

[Here's](http://stackoverflow.com/questions/1676897/what-does-it-mean-to-start-a-php-function-with-an-ampersand#1676963)關於這個問題的另一個話題 - 基本上像@Explosion Pills說的那樣,他們最有可能是爲了提高PHP4的性能而這樣做的,因爲在PHP 4中,每次對象被複制時都會被複制 - 這對於大對象或大型查詢可能會影響生產力我猜)。 –

+0

@sachlearner這將意味着可以修改'$ post',但是我查看了該函數並且它沒有被修改,所以如果你沒有使用幾乎沒有意義的PHP 4 –

相關問題