$_REQUEST[] 的傷害:為什麼你應該避免它
在Web 開發領域,眾所周知,使用$_REQUEST[] 通常不被鼓勵。但為什麼會這樣呢?
$_REQUEST[] 的主要問題不在於它結合 GET 和 POST 參數的能力,而在於它預設包含 $_COOKIE。 Cookie 與表單提交參數有本質上的不同。它們不是由使用者有意設定或更新的,因此它們與表單資料存在於同一個陣列中是不受歡迎的。
當面對與表單參數共用名稱的 cookie 時,表單提交可能會因為以下原因莫名其妙地失敗: cookie 值覆蓋預期的表單參數。當多個應用程式共存於同一站點時,這個問題變得更加成問題,導致難以識別和解決衝突。
為了避免這些潛在的陷阱,PHP 5.3 引入了 request_order 配置設置,它允許開發人員指定資料來源的優先順序(例如,GP 僅適用於 $_GET 和 $_POST)。在沒有此配置的情況下,手動建立組合的 GET POST 陣列是一種更可靠的方法。
以上是為什麼 Web 開發人員應該避免在 PHP 中使用 `$_REQUEST[]`?的詳細內容。更多資訊請關注PHP中文網其他相關文章!