人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

phpで、数字の各桁を足す方法はあるのでしょうか?

例えば、

192837465

の全ての桁を足して、

1+9+2+8+3+7+4+6+5

とし、「45」と答えを出す方法です。

●質問者: onigirin
●カテゴリ:ウェブ制作
✍キーワード:PHP 数字
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● y-kawaz
●56ポイント ベストアンサー

こんな感じでどうでしょうか?

<?php
preg_match_all("([0-9])", "123456789", $m);
echo array_sum($m[0]);
?>'
◎質問者からの返答

どうもありがとうございます!

無事目的が達成されました!!


2 ● nikuzure
●14ポイント

一文字ずつ区切る、というそのものの関数は無いので、以下のようでは駄目でしょうか?

$str = "123456789";

preg_match_all("/./",$str,$result);

一文字ずつの配列が $result に入ります。

正規表現で「なんらかの文字列が1文字該当した場合、$result に格納する」形となっています。

もしくは

$str = "123456789";

$num = 0;

$count = strlen($str);

for($i=0;$i<=$count;$i++){

$num = $num + substr($str,$i,1);

}

などです。

文字列の長さを取得し、一文字ずつ切り取って足しています。


ずばりそのものの関数をご希望でしたらポイントは結構です。

◎質問者からの返答

どうもありがとうございます!

アルゴリズムが参考になりました!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ