csvファイルのテキスト(ツイートなのですが)を1行ごとに取得し変数に代入するのですが、
時々うまくいかないケースがあり、どうやらある程度の長さになると途中までしか代入できていないようです。
strlen()でその長さを調べてみると、248ないし249となっています。
ググったところ変数の大きさに上限はあるものの、その程度であれば全く問題ないように思うのですが...
なにか考えられる原因はありますでしょうか。
【追記】
情報追加依頼がありましたのでコードと入力ファイルのサンプルを追記します。
lang
1//sample.php 2//csvファイルのテキストを読み込み出力するだけのプログラム 3 4<?PHP 5 6 $filename = "sample.csv"; 7 $fp = fopen( $filename, 'r' ); 8 9 // データが無くなるまでファイル(CSV)を1行ずつ読み込む 10 while( $ret_csv = fgetcsv( $fp, 256 ) ) { 11 // 読み込んだ行について処理 12 for($i = 0; $i < count( $ret_csv ); ++$i){ 13 if($i==1){//テキスト部分 14 //echo $ret_csv[$i]."<br>"; 15 $text[] = $ret_csv[$i]; 16 } 17 } 18 } 19 20 fclose( $fp ); 21 22 //テキストを出力 23 foreach($text as $value){ 24 echo $value; 25 echo "<br>"; 26 } 27 28?>
lang
1//sample.csv 21234,雨ニモマケズ風ニモマケズ雪ニモ夏ノ暑サニモマケヌ,, 31235,丈夫ナカラダヲモチ慾ハナク決シテ瞋ラズイツモシヅカニワラッテヰル,, 41236,一日ニ玄米四合ト味噌ト少シノ野菜ヲタベアラユルコトヲジブンヲカンジョウニ入レズニヨクミキキシワカリソシテワスレズ野原ノ松ノ林ノ陰ノ小サナ萓ブキノ小屋ニヰテ東ニ病気ノコドモアレバ行ッテ看病シテヤリ西ニツカレタ母アレバ行ッテソノ稲ノ朿ヲ負ヒ南ニ死ニサウナ人アレバ行ッテコハガラナクテモイヽトイヒ北ニケンクヮヤソショウガアレバツマラナイカラヤメロトイヒ,, 51237,ヒドリノトキハナミダヲナガシサムサノナツハオロオロアルキミンナニデクノボートヨバレホメラレモセズクニモサレズサウイフモノニワタシハナリタイ,,
回答2件
あなたの回答
tips
プレビュー