2

Doctrine と symfony を使用してデータベース テーブルからのエクスポートに取り組んでいます。私は自分のデータベースを呼び出しました

$variableTable = Doctrine::getTable('Table Name')->findAll();

次に、別の変数を設定して、次のようにデータを取得します。

$variable = $variableTable->getData();

それをループできるようにしたいので、必要なデータをcsvファイルに入れることができますが、その部分で立ち往生しています。何らかの理由で、デバッグすると、getData の値に設定されている 2 番目の変数が null/0 であることが示されます。

何かが欠けているかどうかはわかりません。

4

2 に答える 2

10

getDataレコードを呼び出すのではなく、コレクションを呼び出そうとしているのではないかと思いますgetData...しかし、getData各レコードを呼び出す必要があるため、あまり意味がありません。コレクションをループするだけです。さらに、findAll何らかのクレイジーな理由で結果が得られなかった可能性があるため、それを考慮に入れる必要があると思います. とにかく、次のようなコードは過去に私のために働いていたので、あなたのコードの詳細がなければ、私が提供できる最高のものです:

$records = Doctrine::getTable('RecordName')->findAll();

if($records->count()) {
   $csvPath = '/path/to/csv/file.csv';

   $csvh = fopen($csvPath, 'w');
   $d = ','; // this is the default but i like to be explicit
   $e = '"'; // this is the default but i like to be explicit

   foreach($records as $record) {
       $data = $record->toArray(false); // false for the shallow conversion
       fputcsv($csvh, $data, $d, $e);
   }

   fclose($csvh);

  // do something with the file
}
于 2013-02-21T18:17:15.650 に答える
1

データのインポート/エクスポートには既存のソリューションがあります。

次のいずれかを使用することを検討してください。

于 2013-11-22T15:45:34.717 に答える