WordPress のトラブルに関する投稿を読んだのですが、フレームワーク$_POST
などにオプションがある場合に使用することは推奨されないという議論が投稿されてい$this->property->post('value')
ました。
ベスト コーディング プラクティスのコンテキストで使用しない特定の理由はあります$_POST
か、それともまったく問題ではありませんか。
WordPress のトラブルに関する投稿を読んだのですが、フレームワーク$_POST
などにオプションがある場合に使用することは推奨されないという議論が投稿されてい$this->property->post('value')
ました。
ベスト コーディング プラクティスのコンテキストで使用しない特定の理由はあります$_POST
か、それともまったく問題ではありませんか。
確かにそのまま使用することは可能$_POST
ですが、フレームワークのいくつかの機能が失われる可能性があります。たとえば、フレームワークの抽象化レイヤーを使用するときにリクエストパラメーターを使用する OOP 形式が増えたり、フレームワークがユーザー入力を自動的にトリミングしたりすることがあります。そのメリットが失われてしまいます。
内部的には、フレームワークも を使用する必要が$_POST
あります。そうしないと、リクエスト データを取得できませんでした。
したがって、$_POST
直接使用すると、通常はフレームワークの機能として見られる抽象化レイヤーを飛び越えることになります。
フラリッシュのような特定のフレームワークは、スーパーグローバルの使用を思いとどまらせることを知っています。それらは、それらを処理するための独自の方法を持っているからです。
fget、ftoken、fsession、fpost などは、それらの抽象化されたバージョンの例です。なぜそれらが異なるのか、または繁栄がそれらに何をするのかを正確に忘れましたが、ここで詳細を見つけることができると確信しています.
同じことがコードイグナイターなどの他のフレームワークにも当てはまります...など。それがあなたの質問に答えるのに役立つかどうかはわかりません
あなたが私の屋根の下に住んでいる限り、私のルールを守ってください。 - 匿名
フレームワークのベスト プラクティスに従うことをお勧めします。そうしないと、固有のメリットが回避される可能性が高くなります。たとえば、フレームワークには、構成を通じてユーザー入力を自動的にトリミングする方法がある場合があります。その場合、フレームワークは、投稿されたデータの内部表現にのみトリムを適用する可能性が高くなります。別の例として、単体テストでフレームワークのメソッドをオーバーライドすることがあります。変数を直接使用する$_POST
と、使用されている可能性のある「インジェクション」を奪うことになります。