現在の位置: ホーム> 最新記事一覧> 文字列を配列に分割し、array_fill_keysを使用してキー価値ペアの配列に変換するにはどうすればよいですか?

文字列を配列に分割し、array_fill_keysを使用してキー価値ペアの配列に変換するにはどうすればよいですか?

M66 2025-06-06

PHPでは、文字列を配列に処理し、キー価値ペアの配列に変換する必要があることがよくあります。 array_fill_keys関数は、配列の要素に基づいてキー価値ペアの配列を生成し、各キーの指定された値を入力するのに役立つ非常に実用的な関数です。この記事では、例を使用して、文字列を配列に分割する方法を説明し、 array_fill_keysを使用して分割配列をキー値ペア配列に変換します。

ステップ分析

1.エクスプロイト関数を使用して、文字列を分割します

まず、文字列を配列に分割する必要があります。 PHPはexploit()関数を提供し、指定されたデリミターに基づいて文字列を配列に分割できます。

たとえば、コンマを分離した単語を含む文字列があるとします。

 $string = "apple,banana,orange,grape";

exploit()関数を使用して、それを配列に分割します。

 $array = explode(",", $string);
print_r($array);

出力の結果は次のとおりです。

 Array
(
    [0] => apple
    [1] => banana
    [2] => orange
    [3] => grape
)

2。array_fill_keysを使用して、キー値ペア配列に変換します

次に、 array_fill_keys関数を使用して、分割配列をキー価値ペアの配列に変換します。 array_fill_keysには2つのパラメーターが必要です。1つ目はキー名アレイ、2つ目は満たされた値です。

分割配列をキー名配列として使用して、各キーの同じ値を指定します。たとえば、すべてのキーの値をTRUEに設定できます。

 $keys = explode(",", $string);
$values = true; // すべてのキー価値ペアが設定されています true

$assocArray = array_fill_keys($keys, $values);
print_r($assocArray);

出力の結果は次のとおりです。

 Array
(
    [apple] => 1
    [banana] => 1
    [orange] => 1
    [grape] => 1
)

3.インスタンスとURLを組み合わせます

文字列の処理中にURLにも関与している場合は、これらのメソッドを使用してURL文字列を分割し、 array_fill_keysを使用してキー価値ペアを埋めることができます。

次のURLがあるとします。

 $url = "https://m66.net/product?id=123&category=books&price=99";

URLのパラメーターパーツを分割して、キー値ペア配列に変換できます。

 // スプリットURLクエリ文字列パーツ
$queryString = parse_url($url, PHP_URL_QUERY);
parse_str($queryString, $params);

// 使用 array_fill_keys キー価値のペアの配列を作成します
$keys = array_keys($params);
$values = 'some_value'; // すべてのキーの値を設定します 'some_value'

$assocArray = array_fill_keys($keys, $values);
print_r($assocArray);

出力の結果は次のとおりです。

 Array
(
    [id] => some_value
    [category] => some_value
    [price] => some_value
)

この例では、URLを解析し、クエリパラメーターのキー名を抽出することにより、それらをキー価値ペア配列に変換します。