PHP 開発では、数値を配列に変換する必要があることがよくあります。この要件は、特定のルールに従って数値文字列を複数の配列に分割したり、数値文字列を特定の順序で配列に形成したりするなど、さまざまなシナリオで発生する可能性があります。この記事では、数値を配列に変換する 3 つの一般的な方法を紹介します。
1. 配列関数explode()を使用する
PHPには、指定された区切り文字に従って文字列を配列に分割できるexplode()関数が用意されています。まず数値を文字列に変換し、次にexplode()関数を使用して分割して数値の配列を取得します。以下はサンプル コードです:
$num = 12345; $str = (string) $num; // 将数字转成字符串 $arr = explode('', $str); // 以空格为分隔符将字符串分割成数组 print_r($arr);
上記のコードの結果は次のとおりです:
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
数値文字列にはスペース区切り文字がないため、explode() 関数はが使用されます。分割するときは、区切り文字パラメータを空の文字列 '' に設定する必要があります。
2. 文字列の str_split() 関数の使用
数値を配列に変換するもう 1 つの一般的な方法は、str_split() 関数を使用することです。この関数は、指定された長さに応じて数文字ごとに文字列をインターセプトして配列を形成します。したがって、数値を文字列に変換し、str_split() 関数を使用して個別の数値の配列に分割できます。以下はサンプル コードです:
$num = 12345; $str = (string) $num; // 将数字转成字符串 $arr = str_split($str); // 将字符串分割成单个数字组成的数组 print_r($arr);
上記のコードの結果は前の結果と同じです:
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
3. 算術演算を使用して各桁の数値を取得します
最後に 数値を配列に変換する 1 つの方法は、数学的演算を使用することです。 PHP ではモジュロ演算子 (%) と整数除算演算子 (/) を使用して数値を演算し、数値の各桁を取得できます。具体的には、ループを使用して、数値が個別の数値に分割されるまで両方の操作を複数回実行できます。以下はサンプル コードです:
$num = 12345; $temp = $num; $arr = array(); while ($temp > 0) { $arr[] = $temp % 10; // 取模运算获得最后一位数 $temp = (int)($temp / 10); // 整除运算获得剩余位数 } $arr = array_reverse($arr); print_r($arr);
上記のコードの結果は前の結果と同じです:
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
注意すべき点は、ループを使用してモジュロおよび整数の除算を実行する場合です。数値に対する演算を行う場合、正しい結果を得るには、演算によって得られた数値を配列に加算し、配列を逆に戻す必要があります。
概要
PHP 開発では、数値を配列に変換することは非常に一般的な操作です。上記の記事では、数値を配列に変換するためによく使用される 3 つの方法、つまり、explode() 関数の使用、str_split() 関数の使用、および数学演算の使用を紹介しています。読者は、自分のニーズに応じて、さまざまな方法を選択して変換を完了できます。
以上がPHPで数値を配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。