PHP 配列をパラメータに変換する方法に焦点を当てる

PHPz
リリース: 2023-04-17 14:57:21
オリジナル
831 人が閲覧しました

Web 開発テクノロジーの継続的な更新と開発により、PHP はサーバーサイド プログラミング言語としてますます広く使用されるようになりました。配列は、PHP で開発する場合に非常に一般的で重要なデータ型です。配列をパラメータに変換する必要がある場合がありますが、この記事では、PHP 配列をパラメータに変換する方法に焦点を当てます。

1. 配列の定義

PHP では、配列を 2 種類定義できます。 1 つは「インデックス付き配列」で、添字が自然数列である値の順序付けされたコレクションです。例:

$arr = array('张三', '李四', '王五', '赵六');
ログイン後にコピー

もう 1 つは「連想配列」、つまり、添え字が任意の文字列型の値である一連の値の順序付けされたコレクションです。例:

$arr = array('name' => '张三', 'age' => 18, 'sex' => '男');
ログイン後にコピー

2. 配列を文字列に変換する

配列をパラメータとして API に渡すか、URL に追加する必要がある場合は、配列を変換する必要があります。文字列形式に変換します。 PHP は、この機能を実現するために 2 つの関数を提供します。

  1. http_build_query()

http_build_query() 関数を使用して、配列を URL クエリ文字列に変換します。この関数の構文は次のとおりです。

string http_build_query ( mixed $query_data [, string $numeric_prefix [, string $arg_separator [, int $enc_type = PHP_QUERY_RFC1738 ]]] )
ログイン後にコピー

このうち、query_data パラメータは変換対象の配列を表します。 numeric_prefixパラメータはオプションで、配列がインデックス配列の場合、プレフィックスが添字に追加されることを示します。 arg_separatorこのパラメータもオプションであり、複数のパラメータ間の区切り文字を表します。 enc_typeこのパラメータもオプションであり、使用するエンコード方式を示します。デフォルトは PHP_QUERY_RFC1738 です。

次のサンプル コードは、http_build_query() 関数を使用して連想配列を URL クエリ文字列に変換する方法を示しています。

$arr = array('name' => '张三', 'age' => 18, 'sex' => '男');
$querystring = http_build_query($arr);
echo $querystring;
ログイン後にコピー

出力結果は次のとおりです。次のように:

name=%E5%BC%A0%E4%B8%89&age=18&sex=%E7%94%B7
ログイン後にコピー
  1. ##implode()

http_build_query() 関数を使用して配列を次のように変換します。 implode() 関数を使用して配列を文字列に変換することもできます。この関数の構文は次のとおりです。

string implode ( string $glue , array $pieces )
ログイン後にコピー
このうち、

glue パラメータは配列要素を接続するために使用される文字列を表し、pieces パラメータは配列要素を接続するために使用される文字列を表します。変換される配列。

以下は、

implode() 関数を使用してインデックス配列を文字列に変換する方法を示すサンプル コードです。

$arr = array('张三', '李四', '王五', '赵六');
$str = implode(',', $arr);
echo $str;
ログイン後にコピー
出力は次のとおりです。

张三,李四,王五,赵六
ログイン後にコピー
3. 配列を JSON に変換する

配列を JSON 文字列に変換する必要がある場合は、PHP の

json_encode() 関数を使用できます。この関数の構文は次のとおりです。

string json_encode(mixed $value [, int $options = 0 [, int $depth = 512 ]])
ログイン後にコピー
このうち、

value パラメータはエンコードされる配列を表し、options パラメータはオプションであり、指定することができます。エンコーディング オプションを指定するための整数。 Depth パラメーターもオプションで、エンコーディングの最大深さを示します。

次は、

json_encode() 関数を使用して連想配列を JSON 文字列に変換する方法を示すサンプル コードです。

$arr = array('name' => '张三', 'age' => 18, 'sex' => '男');
$json = json_encode($arr);
echo $json;
ログイン後にコピー
出力は次のとおりです。 :

{"name":"\u5f20\u4e09","age":18,"sex":"\u7537"}
ログイン後にコピー
この関数の出力では、中国語の文字が Unicode 文字にエスケープされています。

概要

この記事では、PHP 配列をパラメータに変換する方法を学びました。配列をクエリ文字列または通常の文字列に変換できる 2 つの関数

http_build_query()implode() を導入しました。また、配列を JSON 文字列に変換できる json_encode() 関数も導入しました。これらの関数を学ぶことで、配列をパラメータに変換する方法をマスターし、Web 開発作業をより適切に実行できるようになると思います。

以上がPHP 配列をパラメータに変換する方法に焦点を当てるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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