0

数時間以来、doctrine2 エンティティを csv に変換しようとしています。

私の考えは、(私のリポジトリで)教義エンティティを配列に変換することでした:

return $query->getArrayResult();

その後、この配列を csv に変換します。

しかし、私のフィールドにDateTimeオブジェクトがあるため、csvへの変換配列は機能しません....

教義エンティティを CSV に変換する簡単な方法はありますか?

(ps : 多くの投稿で自分で検索しようとしましたが、うまくいきませんでした。お手数をおかけして申し訳ありません :-( )

4

1 に答える 1

1

Datetime への変換中にエラーが発生しないようにするには、手動で行う必要があります。すべてのオブジェクトを反復処理し、DateTime オブジェクトに対して次を使用して datetime をフォーマットします。

 $date->format('Y-m-d H:i:s');

たとえば、次のことができます。

$csv = "";
foreach ($result as $item)
{
   foreach($item as $element)
   {
      if($element instanceof DateTime)
        $csv .= $element->format('Y-m-d H:i:s'); //Converts the Datetime to string for the given format
     else
        $csv .= $element;
     $csv .= ",";
    }
    $csv .= "\r\n"; //Adds new line
}
echo $csv;
于 2013-09-16T12:58:12.387 に答える