2011-10-21 5 views
1

私の最終結果は、PHPを使用してExcelファイルのcsvファイルから作成された固定長レコードです。私はexcel_reader2.phpで作業しており、これをうまくインポートしてブラウザに表示しているようです。各列が35文字の固定長フィールドとしてエクスポートされるように、内容をファイルにエクスポートまたは書き込むことを順を追って説明します。現在の$データはhtml形式で書かれており、私が何を記述しているかを書き留める方法は分かりません。誰かが私に正しい方向を向けるように事前に感謝します。PHPとphp-excel-readerクラスを使用してCSVデータを固定幅レコードに変換する

+1

あなたは入力としてHTMLテーブルを持っていて、各セルが正確に35文字の幅でプレーンテキストとして表示したいと言っていますか? –

+0

http://code.google.com/p/php-excel-reader/は、Excelの出力をブラウザに表示するために使用しているものです。私が必要とするのは、同じ出力を固定長ファイルにリダイレクトすることです。各フィールドの長さは35文字です。 <?php echo $ data-> dump(true、true);?> htmlダンプ全体が含まれています – Rob

+0

このクラスでシートの行と列にアクセスできるようになっている場合、それらをループして書式設定されたデータを出力できます@Keenoraによって記述されているように。 –

答えて

2

あなたはCSVファイルのすべての行を取ります。次に、行のすべての列。どのセルでも使用できます:

$newcell = sprintf("[%35s]\n", $cell); 

したがって、$ cellのデータで35文字の幅の文字列を使用できます。そして、それをファイルに2つのループで追加します。

+0

Btw。私はこのexcel_reader2.phpを知らないが、もしあなたが配列を得ることができれば、fputcsv関数を使って新しいcsvを書くこともできる。 http://de2.php.net/manual/en/function.fputcsv.php –

+0

http://code.google.com/p/php-excel-reader/私がExcelの出力を表示するために使用しているものですブラウザに。私が必要とするのは、同じ出力を固定長ファイルにリダイレクトすることです。各フィールドの長さは35文字です。 <?php echo $ data-> dump(true、true);?>はhtmlダンプ全体を含む – Rob

+1

私が言ったように、すべての行とすべての列を取得し、それを反復し、毎回上記のようにsprintfを実行する必要があります。細胞。次に、新しいデータをファイルに保存します。次に、固定長の列ファイルを取得します。 –

関連する問題