2011-07-22 31 views
2

アイデアは、文字列を取り、それを2048バイトに詰め込むことです。2048バイトのチャンクへのスリップ文字列

私は5000バイトの文字列がある場合。 data.phpは1つ以上のチャック数を返します。 data.php?chunk=1は最初の2048バイトを返し、chunk=2は次の2048バイトを返し、chunk=3は残りの904バイトを返します。

バイト単位でどのように分割するのか分かりません。

または1文字の1バイトですか?

私はリクエストごとに2048バイトしか許さないlslと一緒に働いています。そのため、私はそれを塊に分解しなければなりません。

答えて

1

文字列は、あなたは、単に各文字は1つのバイトを使用すると、あなたは基本的に2048のバイトをカバーする2048の文字を持っている

$chunks = str_split($string , 2048); 

を使用使用することができ、標準のASCII文字に基づいている場合。

あなたはまた、このようにそれを行うことができますことをしたくない場合は、次の

編集
$chunk_needed = (int) $_GET['chunk']; 
$start_at = ($chunk_needed * 2048) - 2048 ; 
echo substr($string , $start_at , 2048); 

私の謝罪は、私が2048ビットとして2048のバイトを読み違えると、256個の文字を計算することになりました。それぞれの文字が1バイトで、2048バイトの2048文字を持つので、間違っていました。上記のコードを修正しました。

関連する問題