2011-09-08 12 views
0

に特定のCSV値を読む:あなたはセパレータがある見ることができるようには、私は、次のCSVファイル持っているPHP

08-0018421032;00-0018151831;G-20009429-0;G-20009429-0;0374048-0 
27-0018421;10-0018151831;G-30009429-0;G-50009429-0;7374048-0 
36-0018421033232;20-0018151831;G-40009429-0;G-60009429-0;8374048-0 

を。シンボル。

私はPHPでこのファイルを読むことができるので、完璧に動作するjqueryプラグインを介してこの情報をPHPに送信します。次のコードは、(あるの$ csvfile内の変数)CSVファイルをつかんで、私はそれの行を見ることができます:私は必要なのは、その中にラインが、値上だけでなく、を選択することができることです

$file = fopen("upload/$csvfile", "r"); 
while (!feof($file)) { 
$line = fgetcsv($file, 1024,';'); 
print $line[0].'<br/>'; 
} 
fclose($file); 

。特定の値に移動するには、たとえば1行目の3番目の値はG-20009429-0となります。これを後で使用するphp変数に割り当てます。

今、私は行の特定の値を取得する方法がわかりませんし、$ line [0]を出力するときにも、水平方向ではなく垂直方向に値が表示されます。代わりに、このように私を示すの

00-0018151831 
10-0018151831 
20-0018151831 

::私はこれを意味することは、次の出力が表示されていることである

08-0018421032;00-0018151831;G-20009429-0;G-20009429-0;0374048-0 

は多分睡眠ですが、ここで立ち往生しています。ちょうど繰り返すために、私はそれでprint_rを行うことができ、それのすべての行を表示するので、csvファイルはPHPによって正しく読み取られます。私はcsvを持っていると、特定の行の特定の値を取得する方法は、情報を操作する方法です。ありがとうございました。

+0

もしあなたが望むのは、 'fgetcsv()'を使っているのですか? –

答えて

1

$lineは、その行のすべての要素を含む配列です。 $line[0]は行の最初の要素、$line[1]は2番目の要素、以下同様です。試してみてくださいvar_dump($line)。あなたがしていることは、すべての行の最初の要素をすべて出力することです。

あなたは出力に1行のすべての要素をしたい場合は、もう一度列を連結します。

echo join(';', $line); 

しかし、それは、具体的親切そうあなたのための配列にそれらの要素を分離さfgetcsvのポイントを、欠けていますあなたはそれらと一緒に作業することができます。

+0

ありがとうございます。よく説明されています。 –

関連する問題