ホームページ > バックエンド開発 > PHPチュートリアル > PHP で配列を URL パラメータとして効率的に渡すにはどうすればよいですか?

PHP で配列を URL パラメータとして効率的に渡すにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-14 15:24:15
オリジナル
946 人が閲覧しました

How Can I Efficiently Pass Arrays as URL Parameters in PHP?

URL パラメータとして配列を渡す

多くの場合、URL パラメータを介してスクリプトに配列を渡す必要がある場合があります。この問題にはさまざまなアプローチがあり、それぞれに長所と短所があります。

単純なアプローチ

何の処理もせずに配列を URL パラメータとして渡そうとすると、次のような問題が発生する可能性があります。めちゃくちゃな結果に。値を 1 つの文字列に連結すると、扱いにくいパラメータが生成されます。

$url = 'http://www.example.com?aParam[]=value1&aParam[]=value2&aParam[]=value3';
ログイン後にコピー

http_build_query() 関数

幸いなことに、PHP には、http_build_query( ) 関数。入力として連想配列を受け取り、URL エンコードされたクエリ文字列を返します。

$data = array(
    1,
    4,
    'a' => 'b',
    'c' => 'd'
);

$query = http_build_query(array('aParam' => $data));
ログイン後にコピー

これにより、次のクエリ文字列が生成されます。

aParam%5B0%5D=1&aParam%5B1%5D=4&aParam%5Ba%5D=b&aParam%5Bc%5D=d
ログイン後にコピー

関数が必要なクエリをどのように自動的に処理するかに注目してください。エスケープ ([ => [ および ] => ])。これにより、クエリ文字列が正しく形成されることが保証されます。

以上がPHP で配列を URL パラメータとして効率的に渡すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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