8月
04
2009

[PHP]文字列の下○桁を取得する一番の方法を教えていただきました
このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加

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 []

関連する投稿

Written by suzukenn 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. | Background image owner is NASA.