筆記011 PHP變參函數的實現

來源:互聯網
上載者:User
經常使用Js中的變參函數,覺得使用起來甚是方便。突然想到PHP中是否也能夠實現相關的功能呢?

找度娘問了問,度娘告訴我這個想法是可行的。也就是在搜尋的過程中,func_get_arg 和 func_get_args 兩個函數進入了我的眼帘。這兩個函數以前倒是接觸過,大致知道有這麼個東西,不過當時因為沒有這方面的需求,也沒有這方面的考慮,所以沒有對兩個函數的用法做深入瞭解。

func_get_arg 這個函數的作用是擷取一個函數中指定的參數值。文法格式為:func_get_arg(arg_num),其中的 arg_num 指的是參數的數字索引。程式的世界裡,第一個數字不是1,而是0,這個相信不必多說。

func_get_args這個函數的作用則是擷取一個函數中的所有參數值,以數組的方式返回。該函數無需傳遞參數。這個函數則是實現變參函數的關鍵。

通過在一個函數中使用func_get_args這個函數擷取到該函數的所有參數,再對這些參數作一定的邏輯處理,也就是根據參數的不同,進行不同的邏輯操作,也就實現了我們需要的變參函數了。

還有個函數為:func_num_args,這個函數的作用是返回所在函數中的參數的個數,使用這個函數結合著前面提到的函數,可以更加方便地實現我們需要的功能。

具體的例子Hy369就不在部落格中提供了(其實這是在為自己的懶找借口),明白了原理,實現變參函數應該沒有什麼問題了,畢竟我們都是傳說中的攻城獅不是,哈哈。

以上就是筆記011 PHP變參函數的實現的內容,更多相關內容請關注topic.alibabacloud.com(www.php.cn)!

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.