برای طرح سوال و دسترسی به آموزش ها  کانال ما در تلگرام بپویندید  
PhpDebugBar

maximebf/debugbar برای slimframework

اگر قصد داشتن یک نوار دیباگ کامل رو در برنامه نویسی Php داشته باشین maximebf/debugbar یکی از بهترین گزینه هاست.

اینجا نحوه نصب برای SlimFramework از طریق بسته کمکی kitchenu/Slim-DebugBar رو توضیح میدیم:

۱-بسته رو از طریق composer نصب میکنیم:

composer require kitchenu/slim-debugbar

۲-به عنوان یک سرویس دهنده بسته رو ارایه میدیم به اسلیم:

$app = new Slim\App();

$provider = new Kitchenu\Debugbar\ServiceProvider();
$provider->register($app);

۳- دیباگبار میتونه با پکیجهای دیگه مثله monolog و pdo هم ارتباط برقرار کنه و اطلاعات دیباگ این پکیج هارو در اختیارتون بزاره:

  • برای monolog  (فرض میکنیم monolog رو به عنوان یک نیازمندی به فریمورک اسلیم به نام logger معرفی کردیم) :
$container = $app->getContainer();
$container->debugbar->addCollector(new DebugBar\Bridge\MonologCollector($container->logger));
  • برای Pdo و نمایش اطلاعات ارتباط با دیتابیس:
$container = $app->getContainer();

$container['pdo'] = function () {
    return new PDO('sqlite::memory:');
};

$collector = new DebugBar\DataCollector\PDO\PDOCollector($container->pdo);
$container->debugbar->addCollector($collector);
  • برای نمایش اطلاعات Eloquent  هم میتونیم با به دست اوردن شی Pdo مربوطه اطلاعات دیتابیس رو بدست بیاریم(فرض میکنیمEloquent رو به عنوان یک نیازمندی به فریمورک اسلیم به نام db معرفی کردیم):
$container = $app->getContainer();

$pdo = new DebugBar\DataCollector\PDO\TraceablePDO($container->db->getConnection()->getPdo());
$container->debugbar->addCollector(new DebugBar\DataCollector\PDO\PDOCollector($pdo));

phpdebugbar


انتشار

در

توسط

برچسب‌ها:

نظرات

2 پاسخ به “maximebf/debugbar برای slimframework”
  1. ‌A1Gard نیم‌رخ
    ‌A1Gard

    بسیار عالی صادق جان
    بازم از این کارا بکن مطالبت واقعا بکر و غیر قابل پیش بینی هستند
    من که کلی لذت می برم به قول stackoverflow ها +۱

    1. SadeghPM نیم‌رخ
      SadeghPM

      خوشحالم از مطلب راضی بودی +۱ 🙂

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *