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

PHP でクエリ文字列を解析して配列にするにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-17 09:12:25
オリジナル
266 人が閲覧しました

How Can I Parse a Query String into an Array in PHP?

クエリ文字列を配列に解析する

Web プログラミングの領域では、クエリ文字列 (URL に追加されるデータのスニペット) を操作する必要があることがよくあります。 。一般的なタスクの 1 つは、処理を容易にするために、これらの文字列を構造化配列に解析することです。

次のクエリ文字列について考えてみましょう:

pg_id=2&parent_id=2&document&video
ログイン後にコピー

私たちの目標は、この文字列を次のような配列に変換することです:

array(
    'pg_id' => 2,
    'parent_id' => 2,
    'document' => ,
    'video' =>
)
ログイン後にコピー

解決策: parse_str Function

PHP の parse_str 関数は、このタスクに優れています。解析するクエリ文字列と出力配列変数の 2 つのパラメータを取ります。 2 番目のパラメーターを指定することで、取得したキーと値のペアを配列に設定するように関数に指示します。

コードのデモ

$queryString = "pg_id=2&parent_id=2&document&video";
parse_str($queryString, $queryArray);

print_r($queryArray);
ログイン後にコピー

このコードはクエリ文字列を割り当てます。を $queryString 変数に追加し、parse_str を呼び出して空の $queryArray に解析されたデータを設定します。結果の配列は、print_r を使用して表示できます。

出力:

Array
(
    [pg_id] => 2
    [parent_id] => 2
    [document] =>
    [video] =>
)
ログイン後にコピー

追加メモ

  • parse_str は次のものを区別することに注意してください。クエリ文字列内の配列と文字列。
  • たとえば、次の場合クエリ文字列に「document[]」が表示されると、parse_str はそれを出力の配列として解釈します。
  • 2 番目のパラメータを true に設定すると、parse_str はすべての値を自動的に適切な値に強制するのではなく、文字列として扱います。タイプ。

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

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