2012-03-25 87 views
2

我不是一個PHP開發人員,所以下面的問題可能有一個簡單的答案,我錯過了。我不知道什麼是好的,如果check_min函數的返回值沒有分配到任何地方(並且不重新分配,返回)...PHP返回值的神祕性

function a() 
{ 
... 

    $this->check_min(); //check_min function returns a boolean 

... 
} 
+1

好了,不'check_min'做任何事情,除了在最後返回一個布爾值?如果沒有,調用它確實看起來毫無意義 – 2012-03-25 15:47:39

+0

'check_min()'除了返回值之外還有其他工作嗎?如果不是,那麼它沒有多大用處。請記住,其他work_可能包含不明顯的數據庫觸發器或其他觀察器方法。 – 2012-03-25 15:49:05

回答

0

這是沒有好處,除非check_min()做一些事情,有副作用。或者如果某些對象變量無效,可能引發異常或錯誤。

0

如果check_min將修改類的任何值,這將是有意義的調用它。布爾值可以作爲它的執行是否完整的指示器。

通過閱讀功能,我會說,例如,它可以確定其價值是最小的,把國旗上或東西的名稱。如果沒有最小值,它可能會返回錯誤。

但這樣做會很奇怪/誤導。

0

check_min()方法必須具有一些side-effects,即在check_min()方法中執行的任何狀態修改等都被執行。不過,在這種特殊情況下,沒有人關心返回值。

1

這是有道理的那裏調用它,如果下列條件之一爲真:

  • 莫非拋出異常的錯誤或類無效變量的情況下?
  • 它是否改變任何類或對象的屬性?
  • 它調用其他方法或函數嗎?
  • 除了檢查某些東西並基於此返回true/false之外,它通常會執行其他任何操作嗎?

可能是真/假返回只是表示函數已成功執行,而不是檢查已成功完成。