1

投稿変数に投稿配列を使用することに何か悪い点はありますか?

<input type="text" id="stuff" name="stuff[text]"/>

それ以外の

<input type="text" id="stuff" name="stuff"/>    

それらを使用するときのヒント?

4

3 に答える 3

2

いいえ、これを行わない理由はありません。

ただし、このような配列を作成できる言語はPHPだけです。したがって、バックエンドを別の言語に変更した場合は、変更が必要になる可能性があります。

于 2012-04-21T19:44:56.563 に答える
1

それは悪い方法ではありません。通常、プログラマーは配列をこのような方法で使用して、長さが未定の配列を投稿します。まだ。確かなことはわかりませんが、メソッドを GET に変更したい場合、IE <= 8 ではアドレス長が 2048 文字に制限されます。また、動的に生成された配列は、この制限を簡単に解消できます。他のブラウザでは、制限がはるかに高いか、まったくありません。

この方法のもう 1 つの欠点は、PHP は正しく処理されますが、他のサーバー側言語では処理が行われない可能性があることです。私の知る限り、これは公式の HTML ドキュメントでは指定されていません。

したがって、サブ配列を行うポスト配列の単一のセルに配置する方が便利です。名前空間を変更したい場合は、次のように名前を書くことができます。

name="styff.text"

一部のフォーラム エンジンも同様です (特定の Vanilla 2 はそうです)。

あなたに違いがなければ、私はhtml名の単一の変数名にとどまります。ほとんどの場合、バックエンドが原因です。

それらを使用する方法のヒントについては、そのような配列を使用して、サイトで動的に生成されたコンテンツをカバーすることをお勧めします。それでも普通の名前で扱えるのですが、かなり醜いです。画像追加システムを実行したい場合は、各入力ファイルに「pic[]」という名前を付け、サーバー上でテーブル全体を反復します。クライアント側でドキュメントを生成する場合も同じです。次に、「content[][name]」「content[][type]」「content[][value]」などの名前を付けます。ドキュメント パーツ クラスにあるものは何でも、この種の名前を付けて、サーバー上でチェックが設定されているだけで、ドキュメントの特定のブロックに対して特定のことを行います。

すべてのプログラマーには独自の技術があり、それに固執する傾向があるため、これは長い間語られる可能性があります。たとえば、サイトにあるすべてのフォームで a をスローすると、各アクションは一般的なコントローラーによって解析され、特定のコントローラーによって渡されます。

于 2012-04-21T19:51:46.153 に答える
0

何も悪くない。それがあなたに役立つなら、それを使ってください。

于 2012-04-21T19:43:49.550 に答える