log_xxx()/dump()


はじめに

EC-CUBEというかSymfony3アプリケーションのデバックでデータのダンプなど

log_xxx()

log_error()/log_info()など

app/Customize/Controller/SamplePageController.php
/**
 * @Route("/sample/{id}", name="sample_index")
 * @Template("Sample/index.twig")
 */
public function index($id)
{
    $product = $this->productRepository->find($id);
    $size_a = $product->getProductSize()->getSizeA();
    $size_b = $product->getProductSize()->getSizeB();

    log_info(sprintf("%s(%d)", __FILE__, __LINE__), [$size_a, $size_b]); // Arrayだけ

    $product->getProductSize()->setSizeA($size_a + 1);
    $this->entityManager->persist($product);
    $this->entityManager->flush();

    return [
        'shop_name' => $this->baseInfo->getShopName(),
        'product_name' => $product->getName(),
        'maker_name' => $product->getMakerName(),
        'size_a' => $product->getProductSize()->getSizeA(),
    ];
}

Symfony Profiler

SymfonyProfiler→Logs→Info&Errors

dump()

app/Customize/Controller/SamplePageController.php
/**
 * @Route("/sample/{id}", name="sample_index")
 * @Template("Sample/index.twig")
 */
public function index($id)
{
    $product = $this->productRepository->find($id);
    $size_a = $product->getProductSize()->getSizeA();
    $size_b = $product->getProductSize()->getSizeB();

    dump($product); // Objectでも良い
    dump([$size_a, $size_b]); // Arrayでも良い

    $product->getProductSize()->setSizeA($size_a + 1);
    $this->entityManager->persist($product);
    $this->entityManager->flush();

    return [
        'shop_name' => $this->baseInfo->getShopName(),
        'product_name' => $product->getName(),
        'maker_name' => $product->getMakerName(),
        'size_a' => $product->getProductSize()->getSizeA(),
    ];
}

Symfony Profiler

SymfonyProfiler→Debug