スポンサーリンク

ある文字数を超えたらそれ以降をちょんぎって「...」を付けたりすることがあります。PHPでそれを同じようなことをするには、mb_strimwidthを使うと簡単にできます。
「もっとみる」のリンクをつけたりするときのテクニックとして使えます。

プロトタイプ
string mb_strimwidth  ( string $str  , int $start  , int $width
		[, string $trimmarker  [, string $encoding  ]] )


サンプルソース
<?php
function testing_mb_strimwidth($s, $width, $after = ''){
	$n = mb_strimwidth ($s, 0, $width, $after);
	print "$width: [$n]\n";
}

mb_internal_encoding("UTF-8");
testing_mb_strimwidth ("あいうえ", 1);
testing_mb_strimwidth ("あいうえ", 2);
testing_mb_strimwidth ("あいうえ", 3);
testing_mb_strimwidth ("あいうえ", 4);
testing_mb_strimwidth ("あいうえ", 5);
testing_mb_strimwidth ("あいうえ", 6);


testing_mb_strimwidth ("あいうえ", 2, '..');
testing_mb_strimwidth ("あいうえ", 4, '..');
testing_mb_strimwidth ("あいうえ", 8, '..');
?>

実行結果
上記のソースコードの文字コードは、UTF-8でファイルに保存しました。
1: []
2: [あ]
3: [あ]
4: [あい]
5: [あい]
6: [あいう]
2: [..]
4: [あ..]
8: [あいうえ]


幅を1にすると何も表示されません。「あ」が1byteじゃないので何もでません。

echo mb_strimwidth ("あいうえ", 0, 1, );


幅を2にすると、「あ」だけが表示されます。

echo mb_strimwidth ("あいうえ", 0, 2, );



第4引数に文字列を与えると、文字を丸め込んだ後に、第4引数の文字列が連結されます。
丸め込んだ文字数+第4引数の文字数=第3引数(幅)
になります。

幅を2にすると、「..」しかでなくなります。

echo mb_strimwidth ("あいうえ", 0, 2, '..');


幅を4にすると、「あ..」になります。

echo mb_strimwidth ("あいうえ", 0, 4, '..');


幅を8にすると、ぴったり「あいうえ」になります。

echo mb_strimwidth ("あいうえ", 0, 8, '..');


スポンサーリンク
スポンサーリンク
 
いつもシェア、ありがとうございます!


もっと情報を探しませんか?

関連記事

最近の記事

人気のページ

スポンサーリンク
 

過去ログ

2020 : 01 02 03 04 05 06 07 08 09 10 11 12
2019 : 01 02 03 04 05 06 07 08 09 10 11 12
2018 : 01 02 03 04 05 06 07 08 09 10 11 12
2017 : 01 02 03 04 05 06 07 08 09 10 11 12
2016 : 01 02 03 04 05 06 07 08 09 10 11 12
2015 : 01 02 03 04 05 06 07 08 09 10 11 12
2014 : 01 02 03 04 05 06 07 08 09 10 11 12
2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
2003 : 01 02 03 04 05 06 07 08 09 10 11 12

サイト

Vim入門

C言語入門

C++入門

JavaScript/Node.js入門

Python入門

FreeBSD入門

Ubuntu入門

セキュリティ入門

パソコン自作入門

ブログ

トップ


プライバシーポリシー