PHPで文字列を整数配列に変換する方法

PHPz
リリース: 2023-04-26 11:13:44
オリジナル
1279 人が閲覧しました

PHP では、データをさらに処理するために文字列を整数配列に変換する必要があることがよくあります。以下に、文字列を整数の配列に変換するいくつかの方法を紹介します。

方法 1:explode() 関数を使用する

explode() 関数は、指定された区切り文字に従って文字列を配列に分割できます。この関数と型変換を使用すると、カンマ区切りの文字列を整数の配列に変換できます。

たとえば、次の文字列があります:

$str = "1,2,3,4,5";
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

次に、次のコードを使用して、それを整数配列に変換できます:

$arr = explode(",", $str); for ($i = 0; $i < count($arr); $i++) { $arr[$i] = (int)$arr[$i]; //转换成整型后存入数组 }
ログイン後にコピー

方法 2: preg_split を使用します。 () function

explode() 関数と同様に、preg_split() 関数も、指定されたパターンに従って文字列を配列に分割できます。このメソッドは、explode() 関数よりも少し面倒ですが、より複雑な文字列を処理できます。

たとえば、次の文字列があります。

$str = "1 | 2 | 3 | 4 | 5";
ログイン後にコピー

次に、次のコードを使用して、それを整数配列に変換できます。

$arr = preg_split("/[|]+/", $str); for ($i = 0; $i < count($arr); $i++) { $arr[$i] = (int)$arr[$i]; //转换成整型后存入数组 }
ログイン後にコピー

方法 3: array_map( を使用します。 ) function

array_map() 関数は、配列内の各要素に対して指定された処理を実行できる非常に便利な関数です。 intval() 関数をパラメータとして array_map() 関数に渡すと、文字列が整数に変換されます。

たとえば、次の文字列があります。

$str = "1,2,3,4,5";
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

次に、次のコードを使用して、それを整数配列に変換できます。

$arr = array_map('intval', explode(',', $str));
ログイン後にコピー

方法 4: array_walk( を使用します。 ) function

array_map() 関数と同様に、array_walk() 関数も配列内の各要素に対して指定された処理を実行します。 array_walk() 関数を使用して各要素を変換できます。ただし、この場合、変換を実行するコールバック関数を定義し、array_walk() 関数を使用してコールバック関数を呼び出す必要があります。

たとえば、次の文字列があります:

$str = "1,2,3,4,5";
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

次に、次のコードを使用して、それを整数配列に変換できます:

function convertToInt(&$value) { $value = (int)$value; } $arr = explode(',', $str); array_walk($arr, 'convertToInt');
ログイン後にコピー

結論

上記4つの方法 どちらの方法でも文字列を整数の配列に変換できます。このうち、array_map() 関数を使用する方法は比較的簡単で、preg_split() 関数を使用する方法は比較的柔軟です。どの方法を使用するかは、対処する特定の状況によって異なります。

以上がPHPで文字列を整数配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!