2012-03-23 12 views
0

私は、たくさんの文字を含む長い文字列を受け取る必要があります。文字数を指定して文字列を生成するには、その文字を「切り捨てる」必要があります。文字列を決められた長さに「カット」するにはどうしたらいいですか?

例:

$text = 'This is a long string with a lot of characters'; 

$text文字列は、この例では46の文字が含まれています。

私はこのようなわずか20の最初の文字、と$newText文字列を生成する必要があります。

$newText = 'This is a long strin'; 
+0

? – cctan

+0

可能な複製[PHP - X文字の後の文字列を切り取る](http://stackoverflow.com/questions/3161816/php-cut-a-string-after-x-characters) – animuson

+0

番号は私と固定電話番号になります..すべての人に感謝します、substrは仕事をしました... –

答えて

0
$newText = mb_substr($text, 0, 20); 
4

ない問題、substr()を使用しています。最初の20個の文字を取得するには、あなたの変数名を使用すると:

$newText = mv_substr($text, 0, 20, 'UTF-8'); 

これは、20個の文字の後に停止し、先頭から、$テキストの部分文字列を取得します。

<編集> @rdlowreyの提案とOPの文字セットに対応するように更新されました。 < /編集>

+1

あなたは20のようなリテラルを使うのではなく、カット文字列の長さで変数を設定する方が良いでしょう。それはメンテナンスにはいいですし、$ string_lenghtを変えるのは、あなたはそれが25になる必要があることを実感してください。 –

2

strlensubstrを確認してください。

<?php 

$text = 'This is a long string with a lot of characters'; 
echo 'the $text string contains ' . strlen($text) . ' characters in this example.'; 
$newText = substr($text, 0, 20); 

?> 
3

このような意味ですか?

$newText = substr($text, 0, 20); 
3

PHP string functionsを見てください、そして特に、substr

string substr(string $string, int $start[, int $length])

開始パラメータで指定された文字列 の一部を返します

。 「私は決定した文字の数」が決定されてどのように正確に

関連する問題