EC-CUBEのカスタマイズでよく使うコードなのでメモ。
カート内の商品データを取得したい場合、次のコードで取得することができる。
$cartData = $app['eccube.service.cart']->getCart();
foreach($cartData->getCartItems() as $cartItem) {
$productClass = $cartItem->getObject();
$arrCartItem[] = array(
'code' => $productClass->getCode(),
'price' => $productClass->getPrice02(),
'quantity' => $cartItem['quantity'],
);
}
まず、getCartメソッドでカート情報を取得する。
その後、取得したデータをforeach文で回す。
ここでは例として、各商品の商品コード、価格、数量を取得しているが、商品情報は全て取得できるので欲しい情報に合わせてforeach文内を適宜変更すると良い。