PHP 開発では、通常、配列内の値に対して数値変換を実行する必要があります。特にデータ処理や算術演算中は、配列内の値がすべて数値型であることを確認する必要があります。この記事では、PHP 配列の値を数値型に変換するいくつかの方法を紹介します。
1. (int) を使用してキャストする
PHP では、(int) を使用して変数を整数型にキャストできます。同様に、配列内の値を強制的に数値型に変換するために使用することもできます。以下はサンプル コードです:
$array = array('1', '2', '3'); foreach ($array as $key => $value) { $array[$key] = (int) $value; } var_dump($array);
出力結果は次のとおりです:
array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3) }
上記のコードは配列 $array
を走査し、キャストを使用して各配列要素を次のように変換します。整数型。
キャスト型変換では文字列を数値型にのみ変換できることに注意してください。配列内の要素が他のタイプのデータ (ブール値、浮動小数点など) である場合、キャストは失敗します。
2. intval() 関数を使用して変換する
PHP には、変数を整数型に変換するための intval()
関数が用意されています。強制的な型変換とは異なり、intval()
は文字列、浮動小数点数、ブール値などのさまざまな型の変数を整数型に変換できます。以下はサンプル コードです:
$array = array('1', '2.5', true, false, '5'); foreach ($array as $key => $value) { $array[$key] = intval($value); } var_dump($array);
出力結果は次のとおりです:
array(5) { [0]=> int(1) [1]=> int(2) [2]=> int(1) [3]=> int(0) [4]=> int(5) }
上記のコードでは、intval()
関数を使用して配列内の各要素を変換します。整数型に変換します。ブール値を整数に変換するルールは、true
は 1
に変換され、false
は 0
に変換されるため、出力結果は、3 つの要素が 1
に変換され、4 番目の要素が 0
に変換されます。
intval()
関数を使用する場合、パラメータが空の場合、または整数型に変換できない場合は 0 が返されることに注意してください。
3. array_map() 関数を使用して変換する
for ループと foreach ループに加えて、array_map()
関数を使用して、配列内の要素を数値に変換します。 array_map()
この関数は、コールバック関数を通じて受信配列の各要素を処理し、処理された新しい配列を返すことができます。以下はサンプル コードです:
$array = array('1', '2', '3'); $array = array_map('intval', $array); var_dump($array);
出力結果は次のとおりです:
array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3) }
上記のコードは、intval()
関数をコールバック関数として array_map に渡します。 ()## # 関数。
array_map() は各要素を反復処理し、その要素に対してコールバック関数を呼び出し、最後に新しく処理された配列を返します。この場合、
array_map() は、各文字列要素が整数型に変換された配列を返します。
array_map() 関数は元の配列を変更せず、新しい配列を返すことに注意してください。元の配列を変更したい場合は、新しい配列を元の配列に割り当てる必要があります。
intval() 関数、
array_map() 関数のいずれを使用しても、配列内の要素を数値型に簡単に変換できます。開発プロセスでは、実際のニーズに応じて適切な方法を選択してください。
以上がPHPで配列の値を数値に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。