1
0

More than 3 years have passed since last update.

標準入力 電話番号のハイフンを消して一文字ずつ配列に入れる方法

Last updated at Posted at 2021-03-16

標準入力で役立つ関数

str_replace();

str_replace
文字列から任意の文字列を置き換える

例)


$tel = '090-1111-2222';
$t = str_replace('-','',$tel);
//結果
//09011112222

str_split();

str_split
文字列を配列に変換する。
第一引数に変換する文字列
第二引数に変換する文字の文字数
を指定


$t = '09011112222';
$arr = str_split($t,1);

// var_dump($t);
/*
  [0]=>
  string(1) "0"
  [1]=>
  string(1) "9"
  [2]=>
  string(1) "0"
  [3]=>
  string(1) "1"
  [4]=>
  string(1) "1"
  [5]=>
  string(1) "1"
  [6]=>
  string(1) "1"
  [7]=>
  string(1) "2"
  [8]=>
  string(1) "2"
  [9]=>
  string(1) "2"
  [10]=>
  string(1) "2"
}
*/

mb_strlen()

mb_strlen
文字列の数を取得する(似たものにstrlen())がある。


$t = '09011112222';
$tel_length = mb_strlen($t);// 11;

substr();

substr
第一引数に検索する文字列
第二引数にoffset(文字検索の開始位置)
第三引数にoffsetから検索する文字数
を指定する


 $tel_part = substr($t,0,1);// 0
//0番目から1文字取得する
 $tel_part2 = substr($t,3,2);//11
//3番目から2文字取得する

応用

mb_strlenとsubstrを使うと文字列でforループできる
電話番号の数字の合計を出力


$t = '09011112222';
$tel_length = mb_strlen($t);
// $tel_part = substr($tel,0,1);// 0
$sum = 0;
for($i=0;$i<$tel_length;$i++){
    $n = substr($t,$i,1);
        $sum = $sum + intval($n);

}

$result = $sum ;
echo $result; //21
1
0
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
1
0