4
1

More than 3 years have passed since last update.

【PHP】配列の要素をintにキャストする

Last updated at Posted at 2021-02-27

はじめに

配列の要素にstringが含まれていて、困るシーンがあったので、配列の要素をintにキャストする関数を考えました。

コード

$arr = ['1', '2', '3'];

$res = array_map('intval', $arr)
/*
array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
}
*/

array_mapにコールバックintval()を渡すことで、全要素にintval()が行われてキャストされるという仕組みです。

おまけ

Utilsに自分で追記してもいいのかなと思ってます☺

/**
 * 配列の要素を指定に型にキャストする
 *
 * @param array $arr キャストしたい配列
 * @param string $cast_type 【int, str, float, bool】を指定することが可能
 * @return array キャストした配列を返却
 */
function array_cast(array $arr, string $cast_type): array {
    return array_map($cast_type.'val', $arr);
}
4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1