91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php傳參有哪些方法

發布時間:2020-07-22 16:48:43 來源:億速云 閱讀:170 作者:Leah 欄目:編程語言

php傳參有哪些方法?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

php傳參的方法有:1、調用者直接傳參,無需對參數進行處理加工;2、把參數組合成一個數組的形式,整一個數組當做參數進行傳遞;3、傳遞一個數據結構對象當做參數。

php傳參的方法有:

第一種

直接傳參,每個參數一個個的排好隊寫上,例如:

php傳參有哪些方法

優點:

  • 傳入的參數清晰,明確可以知道傳入參數有多少個,分別代表什么意思,從語義上一目了然。

  • 調用方便,調用者直接傳參,無需對參數進行處理加工。

  • 對新手來說更加友好,更容易理解。

缺點:

  • 形參太多,代碼失去了美感,太隨性了。

  • 當某個參數需要改動的時候,簡直是牽一發而動全身,比如$param5改為選填參數,并且默認值為test:

php傳參有哪些方法

缺點很明顯,這個時候由于php參數順序的問題,選填參數必須在最后,所以所有調用者都需要起碼把原來的param5去除,放在參數最后位置,改動代價高。

總結:當參數少的時候,可以使用直接一個個參數傳遞,這樣是最好的,但是當參數過多,或者改動需求大的時候,這種方法無疑是繁重的。

所以針對上面這種,當參數數量過多的時候,可以使用方法二:

第二種

把參數組合成一個數組的形式,整一個數組當做參數進行傳遞。例如:

php傳參有哪些方法

優點:

  • 代碼更加整潔了。

  • 代碼更加靈活,現在就算有一個參數需要改動,也無需修改函數的參數,只需要在調用者處增加參數即可。

缺點:

  • 沒有了php的語法限制。例如沒有了string這種的類型限制,沒有了帶默認值的選填參數的語法限制。這樣子就需要你做多一層參數的檢查。

  • 參數可讀性差了。函數的數組里面有哪些參數是不能通過形參看出來的,需要查看調用者的數組組成。

總結:總體來說這種方法可以解決第一種傳參方式的弊端,但是也自身帶來了更加大的弊端,參數的限制需要另外增加一層鉤子去處理,可以說是性價比比較低的一種方法。

綜合上面兩種方法的利弊,我總結出第三種傳參方式:

第三種

傳遞一個數據結構對象當做參數,例如:

php傳參有哪些方法

優點:

  • 參數為一個數據結構,保證數據的完整性。就是傳進來的數據結構必然能包含所需的參數。

  • 當參數需要更加或者減少的時候,只需要修改數據結構模型的對象屬性即可。

  • 把數據的控制和限制可以統一放在模型層進行處理。

缺點:

  • 可能需要多個數據結構模型。

總結:總體來說這種方法可以比較全面的解決第一第二種方法的弊端,就是需要建立多種數據結構模型,增加了代碼量。


看完上述內容,你們掌握php傳參有哪些方法的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

甘谷县| 兴义市| 黄平县| 山东省| 天气| 赞皇县| 绍兴县| 陵川县| 扬中市| 新沂市| 洛川县| 柘城县| 山阴县| 湘阴县| 股票| 元阳县| 巴彦淖尔市| 盘锦市| 高密市| 大丰市| 华蓥市| 乐亭县| 太湖县| 通城县| 同仁县| 桃园县| 凤山市| 吴旗县| 藁城市| 麦盖提县| 托克托县| 页游| 石泉县| 青州市| 湾仔区| 恩施市| 安庆市| 青铜峡市| 北流市| 大庆市| 大冶市|