8月
04
2009

[PHP]文字列の下○桁を取得する一番の方法を教えていただきました


miau_jpさんより、Twitter入電!素敵な方法を教えていただきました。


$keta = 4;
// 文字列
$test = "24578455";
$result = substr($test, -$keta);
// 数字
$test = 24578455;
$result = $test % pow(10, $keta);

// 指定桁数未満の場合0で埋めるなら
$result = sprintf("%04s", substr($test, -$keta));

スッキリしました。miau_jpさん、どうもありがとうございます!

—以下元の記事

例えば

24578455の下4桁、8455を取得したいとき、皆さんならどうやります?
多分セオリー的なやり方はあるんでしょうけど、僕はわからないので、

		$test = "24578455";
		var_dump(strrev(sprintf("%-04.4s", strrev($test))));

こんな風に訳のわからない方法*1 でやってるんですが、お優しい方助言いただけたら幸いです。

  1. strrevで文字を反転させて頭4桁取得、4桁未満なら0埋、で、最後にstrrevで再反転してます。愚かですよね…orz []

▼Advertisement

【Webサービスを作ろう!好評連載中!】このエントリーをはてなブックマークに追加 はてなブックマーク -
⇒ #1 挫折しないウェブサービス開発のための4つの心構え
Webサービス、Webアプリケーション開発に興味のある方は必見です!

【2月のイチオシ記事】このエントリーをはてなブックマークに追加 はてなブックマーク -
⇒ 社長になった私がお金にならないデータベースサイトを作った7つの理由

Written by suzuki in: 記事 | タグ: , ,

2件のコメント »

  • daira より:

    substr()を使った方法が間違ってますよ。
    正しくは
    substr($test, -$keta)
    ですね。

  • suzukenn より:

    dairaさん、こんにちは。
    教えていただいたmiau_jpさんにも正しい方法をお聞きしたのですが、おバカな僕が書くときにミスしたようです…orz
    間違いのご指摘、ありがとうございました!

RSS feed for comments on this post.  トラックバックURL


コメントをのこす

| I have been indebted to Aeros Theme. |