下記のphpにより、csv_data.csvの8行目から14行目の取得が可能です。
一方、上記とは別に「6行目の4カラム目」のデータも取得する必要があります。
そこでecho $data[5][3];と記載してみたのですが、
「6行目の4カラム目」の取得がうまくいきません。
下記の記述方法だと「6行目の4カラム目」ではなく、
「1行目の6カラム目の4つ目の文字をひとつだけ抽出」してしまいます。
php
1 2$page_start =8; 3$page_stop =14; 4$fp = fopen("csv_data.csv", "r"); 5$i=1; 6while ($data = fgetcsv($fp, 10000)) { 7$i++; 8if($i < $page_start){ 9continue; 10}elseif($i <= $page_stop){ 11print("".$data[0].",".$data[1].",".$data[2].",".$data[3].",".$data[4].",".$data[5].",".$data[6]. PHP_EOL); 12}else{ 13break; 14} 15} 16echo "<BR>LLL<BR>"; 17echo $data[5][3]; 18echo "<BR>LLL<BR>";
そこで下記のように変更したところ($dataに[]を付ける)
($data = fgetcsv($fp, 10000)) → ($data[] = fgetcsv($fp, 10000))
「6行目の4カラム目」のデータは無事取得できたのですが
今度は、8行目から14行目の全体データ取得が出来ず、Array の羅列となります。
php
1<?php 2$page_start =8; 3$page_stop =14; 4$fp = fopen("csv_data.csv", "r"); 5$i=1; 6while ($data[] = fgetcsv($fp, 10000)) { 7$i++; 8if($i < $page_start){ 9continue; 10}elseif($i <= $page_stop){ 11print("".$data[0].",".$data[1].",".$data[2].",".$data[3].",".$data[4].",".$data[5].",".$dat5[6]. PHP_EOL); 12}else{ 13break; 14} 15} 16echo "<BR>rrr<BR>"; 17echo $data[5][3]; 18echo "<BR>rrr<BR>"; 19
「8行目から14行目の全データ取得」と「6行目の4カラム目の単独データ取得」を
同時に行いたいのですが、どこに誤りがございますか?
ご教示いただきたくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/02/06 23:49
退会済みユーザー
2021/02/07 00:21
2021/02/07 01:01
退会済みユーザー
2021/02/07 01:07