看板 PHP 關於我們 聯絡資訊
抱歉!我算是PHP的新人,希望不要怪我問的問題太笨..... 以前我在看書時,函數如果有參數,都不會有初值 如:public function abc($ex,$info,$url){.......} 但現在在工作時,常常看到都有設初值 如:public function abc($ex = TRUE, $info = 'admin_info', $url = 'admin/login') 問題如下: 1.有設初值的參數的函式,和沒有設初值的參數的函式有甚麼差別呢? 2.如果有地方呼叫這個函式---->abc(FALSE);--->這個的意思是第一個參數設為false而 其他的參數,和函式所設的一樣(如 $info 設為 'admin_info', $url設為 'admin/login') 是這個意思嗎? 麻煩個位高手了 感激不盡 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.233.217.210 ※ 文章網址: http://www.ptt.cc/bbs/PHP/M.1416715073.A.0C0.html
bibo9901: 是 11/23 12:20
MOONRAKER: 學過C++就知道他們也有 意思一樣 11/23 14:07
urekak: 你想的沒有錯"使用這個函式預設值"通常是方便調用函式用 11/23 14:59
bency: 沒設預設值的函式在呼叫時沒給值會噴 error 11/23 19:38
dontblame: 如果你十次使用此函數,有九次某個參數都會設一樣 11/24 12:19
dontblame: 會不會希望,不一樣時再設就好,沒設就用預設值? 11/24 12:19
alog: coding技巧 有沒有需要倒是看你需不需要 11/24 14:48
KawasumiMai: 給初值是optional吧?意思是選擇性可省略 11/24 20:58
KawasumiMai: 通常是想合併些大同小異的函數,把同樣的部分一起寫 11/24 20:59
KawasumiMai: 而給初值的部分有時候代表不作用,只有給予其他值的 11/24 20:59
KawasumiMai: 時候才會動作,這樣可以讓同樣的函數只作一半的事 11/24 20:59
KawasumiMai: 當然也可以用來防止意外,或常用的值懶得給這樣 11/24 21:00