亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在沒有特定需要的情況下將 PHP 代碼隔離到不同的函數中是一種好習慣嗎?

在沒有特定需要的情況下將 PHP 代碼隔離到不同的函數中是一種好習慣嗎?

PHP
米脂 2023-04-15 10:55:53
我正在編寫 php 代碼以定義一些信息(在 HTMl 頁面的開頭),然后在頁面本身中使用定義的變量。如果我有一些安寧的代碼,那應該被重復調用,那么毫無疑問我會為此使用函數。但在這種情況下,我問的是代碼,它只在頁面上運行一次并定義了一些信息,這些信息將在以后使用。但我試圖弄清楚,什么是最佳實踐。在一種情況下,我自己編寫了創建/獲取/處理信息的所有代碼。$x = 10;$select = $db->some_query (that is pseudo code...)$x = $x + $select;echo $x;在另一種情況下,我根據其含義將其隔離為不同的功能。然后從腳本的開頭調用這些函數。在這種情況下,我必須使我想在其他地方使用的變量成為全局變量。define_x_variable($db);function define_x_variable($db) {    global x;    $x = 10;    $select = $db->some_query (that is pseudo code...)    $x = $x + $select;}echo $x;所以,我使用第二種方法的原因是:更容易看出,某種和平的代碼完成了什么(通過函數的名稱)[另一方面,它可以通過 php 注釋完成...]函數中使用的變量不會在這個函數之外的任何地方出現(所以,在這種情況下,$select變量沒有在這個函數之外定義。所以,如果我決定在其他情況下再次使用這個變量,我就不必覆蓋它。我不會不小心使用它以前的意思)$x通過我自己定義的整個腳本(例如: variable ),我只能訪問某些變量。所以,唯一的問題是,我不確定以這種方式編碼是否是一種好的做法。我讀過,全局變量名聲不好,不建議使用。我還認為,我可能會使事情過于復雜。那么什么是更好的方法呢?
查看完整描述

1 回答

?
幕布斯7119047

TA貢獻1794條經驗 獲得超8個贊

你的第二個選擇是最好的方法。

您自己應用了關注點分離原則

  • 收集資料

  • 格式化數據

  • 顯示數據

  • 依此類推...

如果你有興趣,你可以去看看像 Symfony 這樣的 PHP 框架,它努力為代碼提供一些 goos 結構。

您應該始終提供干凈、組織良好的代碼,功能僅限于一小部分工作。然后你可以把它變得完美,最后得到一個更易于維護的軟件。

所以,先組織好,再看看性能問題,如果有的話。


查看完整回答
反對 回復 2023-04-15
?
暮色呼如

TA貢獻1853條經驗 獲得超9個贊

我寧愿為此編寫一個函數。僅僅因為,如果您想要對其進行任何更改很容易,并且當我們的應用程序中某處需要相同的功能時,我們可以重用它。

最好選擇函數式寫法。

謝謝


查看完整回答
反對 回復 2023-04-15
  • 1 回答
  • 0 關注
  • 135 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號