ホームページ > バックエンド開発 > PHPチュートリアル > クエリ文字列で配列を渡すにはどうすればよいですか?

クエリ文字列で配列を渡すにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-30 19:08:10
オリジナル
273 人が閲覧しました

How Can I Pass Arrays in Query Strings?

クエリ文字列での配列の受け渡し

クエリ文字列での配列の受け渡しは標準化された方法ではありません。それにもかかわらず、配列の動作をシミュレートするためにさまざまな手法を使用できます。

標準構文:

決定的な標準はありませんが、パラメーター名に角かっこを使用すると (例: 、myarray[]) は、PHP が値を次のように解釈できるようにする一般的なアプローチです。 array.

複数値フォーム フィールド:

  1. name[]= 構文で複数選択ボックスを使用します:

    <select multiple="multiple" name="cars[]">
      <option>Volvo</option>
      <option>Saab</option>
      <option>Mercedes</option>
    </select>
    ログイン後にコピー
  2. 同じフィールドで複数の非表示フィールドを使用するname:

    <input type="hidden" name="cars[]" value="Volvo">
    <input type="hidden" name="cars[]" value="Saab">
    <input type="hidden" name="cars[]" value="Mercedes">
    ログイン後にコピー

コード内の配列の認識:

PHP:

パラメータ名は [] 構文に従います。PHP はそれを自動的にarray.

JavaScript:

クエリ文字列内の配列を識別するネイティブな方法はありません。ただし、同じ名前の複数の値の存在を手動で確認することは可能です。

const queryString = window.location.search;
const params = new URLSearchParams(queryString);

if (params.has("myarray")) {
  // It's an array
}
ログイン後にコピー

複数のパラメータの名前付け:

同じ名前の複数のパラメータを使用することは可能です。許容されますが、推奨されません。これは標準的な方法ではなく、特にパラメータが複数のコンテキストで使用される場合に混乱を引き起こす可能性があります。

値の区切り:

項目の順序を維持することが重要な場合は、区切り文字で区切られた文字列を渡し、それを手動で解析して配列にすることを検討してください。

以上がクエリ文字列で配列を渡すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート