{"id":43,"date":"2016-04-06T09:40:40","date_gmt":"2016-04-06T09:40:40","guid":{"rendered":"https:\/\/dangnhsite.wordpress.com\/?p=43"},"modified":"2018-01-14T12:58:43","modified_gmt":"2018-01-14T04:58:43","slug":"variable-debug-in-yii-2","status":"publish","type":"post","link":"https:\/\/dangnh.cf\/vi\/2016\/04\/06\/variable-debug-in-yii-2\/","title":{"rendered":"Debug variables in Yii 2"},"content":{"rendered":"<p>I&#8217;ve been working with <a href=\"http:\/\/www.yiiframework.com\">Yii framework version 2.0<\/a> for a few days now, and I find Yii&#8217;s <a href=\"http:\/\/www.yiiframework.com\/doc-2.0\/ext-debug-index.html\">Debugger <\/a>and <a href=\"http:\/\/www.yiiframework.com\/doc-2.0\/yii-helpers-vardumper.html\">vardumper function<\/a> are extremely uncomfortable!<\/p>\n<p>Since for the sake of Simplicity and Quick Development, I&#8217;ve created a helper for those who use Yii. You can just call <strong>dd($var1, $var2, &#8230;.);<\/strong> for dump &amp; die or <strong>d($var1, $var2, &#8230;.);<\/strong> for dump data.<\/p>\n<h2>Installation:<\/h2>\n<ul>\n<li>Create a file so called\u00a0<em>functions.php<\/em> in<\/li>\n<\/ul>\n<blockquote><p>\/common\/config\/<\/p><\/blockquote>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"49\" data-permalink=\"https:\/\/dangnh.cf\/vi\/2016\/04\/06\/variable-debug-in-yii-2\/attachment\/2\/\" data-orig-file=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/2.png?fit=236%2C492&amp;ssl=1\" data-orig-size=\"236,492\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"2\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/2.png?fit=236%2C492&amp;ssl=1\" class=\"wp-image-49 aligncenter\" src=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/2.png?resize=196%2C409\" alt=\"2\" width=\"196\" height=\"409\" srcset=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/2.png?w=236&amp;ssl=1 236w, https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/2.png?resize=144%2C300&amp;ssl=1 144w\" sizes=\"auto, (max-width: 196px) 100vw, 196px\" \/><\/p>\n<ul>\n<li>Paste those code into\u00a0<em>function.php\u00a0<\/em>then save it (please re-format those lines of code, stupid wp.com &gt;:( )<\/li>\n<\/ul>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\n&lt;?php\r\n\/*\r\n* Code by DangNH\r\n* Date: Apr 4, 2016\r\n*\/\r\n \r\n\/**\r\n* Debug function\r\n* d($var);\r\n*\/\r\nfunction d() {\r\n echo '&lt;pre&gt;';\r\n for ($i = 0; $i &lt; func_num_args(); $i++) {\r\n yii\\helpers\\VarDumper::dump(func_get_arg($i), 10, true);\r\n }\r\n echo '&lt;\/pre&gt;';\r\n}\r\n \r\n\/**\r\n* Debug function with die() after\r\n* dd($var);\r\n*\/\r\nfunction dd() {\r\n for ($i = 0; $i &lt; func_num_args(); $i++) {\r\n  d(func_get_arg($i));\r\n }\r\n die();\r\n}\r\n<\/pre>\n<ul>\n<li>Now, edit\u00a0<em>bootstrap.php\u00a0<\/em>in<\/li>\n<\/ul>\n<blockquote><p>\/common\/config\/bootstrap.php<\/p><\/blockquote>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"51\" data-permalink=\"https:\/\/dangnh.cf\/vi\/2016\/04\/06\/variable-debug-in-yii-2\/attachment\/3\/\" data-orig-file=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/3.png?fit=200%2C148&amp;ssl=1\" data-orig-size=\"200,148\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"3\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/3.png?fit=200%2C148&amp;ssl=1\" class=\"size-full wp-image-51 aligncenter\" src=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/3.png?resize=200%2C148\" alt=\"3\" width=\"200\" height=\"148\" \/><\/p>\n<p style=\"padding-left: 30px;\">and then add this line of code to the top:<\/p>\n<p>&nbsp;<\/p>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\nrequire('functions.php'); \/\/add custom helper functions to the whole application\r\n<\/pre>\n<p style=\"padding-left: 30px;\">like so<\/p>\n<p style=\"padding-left: 30px;\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"52\" data-permalink=\"https:\/\/dangnh.cf\/vi\/2016\/04\/06\/variable-debug-in-yii-2\/attachment\/4\/\" data-orig-file=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/4.png?fit=659%2C128&amp;ssl=1\" data-orig-size=\"659,128\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"4\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/4.png?fit=659%2C128&amp;ssl=1\" class=\"size-full wp-image-52 aligncenter\" src=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/4.png?resize=659%2C128\" alt=\"4\" width=\"659\" height=\"128\" srcset=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/4.png?w=659&amp;ssl=1 659w, https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/4.png?resize=300%2C58&amp;ssl=1 300w\" sizes=\"auto, (max-width: 659px) 100vw, 659px\" \/><\/p>\n<h3>Voila! Now you can call <span style=\"color: #ff0000;\">d($var1, $var2, $varx);<\/span> for dump or <span style=\"color: #ff0000;\">dd($var1, $var2, $varx)<\/span> for dump then die anywhere in your application!<\/h3>\n<h3>Sample result:<\/h3>\n<div data-carousel-extra='{&quot;blog_id&quot;:1,&quot;permalink&quot;:&quot;https:\/\/dangnh.cf\/vi\/2016\/04\/06\/variable-debug-in-yii-2\/&quot;}' id='gallery-1' class='gallery galleryid-43 gallery-columns-1 gallery-size-medium'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/5.png?ssl=1\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"56\" src=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/5.png?fit=300%2C56&amp;ssl=1\" class=\"attachment-medium size-medium\" alt=\"\" aria-describedby=\"gallery-1-55\" srcset=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/5.png?w=637&amp;ssl=1 637w, https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/5.png?resize=300%2C56&amp;ssl=1 300w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" data-attachment-id=\"55\" data-permalink=\"https:\/\/dangnh.cf\/vi\/2016\/04\/06\/variable-debug-in-yii-2\/attachment\/5\/\" data-orig-file=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/5.png?fit=637%2C118&amp;ssl=1\" data-orig-size=\"637,118\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"5\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;Call debug function&lt;\/p&gt;\" data-large-file=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/5.png?fit=637%2C118&amp;ssl=1\" \/><\/a>\n\t\t\t<\/div>\n\t\t\t\t<figcaption class='wp-caption-text gallery-caption' id='gallery-1-55'>\n\t\t\t\tCall debug function\n\t\t\t\t<\/figcaption><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon portrait'>\n\t\t\t\t<a href=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/6.png?ssl=1\"><img loading=\"lazy\" decoding=\"async\" width=\"87\" height=\"300\" src=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/6.png?fit=87%2C300&amp;ssl=1\" class=\"attachment-medium size-medium\" alt=\"\" aria-describedby=\"gallery-1-56\" srcset=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/6.png?w=256&amp;ssl=1 256w, https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/6.png?resize=87%2C300&amp;ssl=1 87w\" sizes=\"auto, (max-width: 87px) 100vw, 87px\" data-attachment-id=\"56\" data-permalink=\"https:\/\/dangnh.cf\/vi\/2016\/04\/06\/variable-debug-in-yii-2\/attachment\/6\/\" data-orig-file=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/6.png?fit=256%2C886&amp;ssl=1\" data-orig-size=\"256,886\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"6\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;result in browser&lt;\/p&gt;\" data-large-file=\"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/6.png?fit=256%2C886&amp;ssl=1\" \/><\/a>\n\t\t\t<\/div>\n\t\t\t\t<figcaption class='wp-caption-text gallery-caption' id='gallery-1-56'>\n\t\t\t\tresult in browser\n\t\t\t\t<\/figcaption><\/figure>\n\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>Debug variables in Yii 2<\/p>","protected":false},"author":1,"featured_media":46,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[5],"tags":[],"class_list":["post-43","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Debug variables in Yii 2 - Mark&#039;s Blog<\/title>\n<meta name=\"description\" content=\"debug yii2 easy\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/dangnh.cf\/vi\/2016\/04\/06\/variable-debug-in-yii-2\/\" \/>\n<meta property=\"og:locale\" content=\"vi_VN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Debug variables in Yii 2 - Mark&#039;s Blog\" \/>\n<meta property=\"og:description\" content=\"debug yii2 easy\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dangnh.cf\/vi\/2016\/04\/06\/variable-debug-in-yii-2\/\" \/>\n<meta property=\"og:site_name\" content=\"Mark&#039;s Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/dangtute\" \/>\n<meta property=\"article:published_time\" content=\"2016-04-06T09:40:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-01-14T04:58:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/dangnh.cf\/wp-content\/uploads\/2016\/04\/debug-excel.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"640\" \/>\n\t<meta property=\"og:image:height\" content=\"388\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u0110\u01b0\u1ee3c vi\u1ebft b\u1edfi\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 ph\u00fat\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/dangnh.cf\\\/2016\\\/04\\\/06\\\/variable-debug-in-yii-2\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/dangnh.cf\\\/2016\\\/04\\\/06\\\/variable-debug-in-yii-2\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\\\/\\\/dangnh.cf\\\/#\\\/schema\\\/person\\\/8f3b9db3b250186af217fbeec88eda9c\"},\"headline\":\"Debug variables in Yii 2\",\"datePublished\":\"2016-04-06T09:40:40+00:00\",\"dateModified\":\"2018-01-14T04:58:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/dangnh.cf\\\/2016\\\/04\\\/06\\\/variable-debug-in-yii-2\\\/\"},\"wordCount\":231,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/dangnh.cf\\\/2016\\\/04\\\/06\\\/variable-debug-in-yii-2\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/dangnh.cf\\\/wp-content\\\/uploads\\\/2016\\\/04\\\/debug-excel.jpg?fit=640%2C388&ssl=1\",\"articleSection\":[\"PHP\"],\"inLanguage\":\"vi\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/dangnh.cf\\\/2016\\\/04\\\/06\\\/variable-debug-in-yii-2\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/dangnh.cf\\\/2016\\\/04\\\/06\\\/variable-debug-in-yii-2\\\/\",\"url\":\"https:\\\/\\\/dangnh.cf\\\/2016\\\/04\\\/06\\\/variable-debug-in-yii-2\\\/\",\"name\":\"Debug variables in Yii 2 - Mark's Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/dangnh.cf\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/dangnh.cf\\\/2016\\\/04\\\/06\\\/variable-debug-in-yii-2\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/dangnh.cf\\\/2016\\\/04\\\/06\\\/variable-debug-in-yii-2\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/dangnh.cf\\\/wp-content\\\/uploads\\\/2016\\\/04\\\/debug-excel.jpg?fit=640%2C388&ssl=1\",\"datePublished\":\"2016-04-06T09:40:40+00:00\",\"dateModified\":\"2018-01-14T04:58:43+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/dangnh.cf\\\/#\\\/schema\\\/person\\\/8f3b9db3b250186af217fbeec88eda9c\"},\"description\":\"debug yii2 easy\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/dangnh.cf\\\/2016\\\/04\\\/06\\\/variable-debug-in-yii-2\\\/#breadcrumb\"},\"inLanguage\":\"vi\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/dangnh.cf\\\/2016\\\/04\\\/06\\\/variable-debug-in-yii-2\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"vi\",\"@id\":\"https:\\\/\\\/dangnh.cf\\\/2016\\\/04\\\/06\\\/variable-debug-in-yii-2\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/dangnh.cf\\\/wp-content\\\/uploads\\\/2016\\\/04\\\/debug-excel.jpg?fit=640%2C388&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/dangnh.cf\\\/wp-content\\\/uploads\\\/2016\\\/04\\\/debug-excel.jpg?fit=640%2C388&ssl=1\",\"width\":640,\"height\":388},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/dangnh.cf\\\/2016\\\/04\\\/06\\\/variable-debug-in-yii-2\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/dangnh.cf\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Debug variables in Yii 2\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/dangnh.cf\\\/#website\",\"url\":\"https:\\\/\\\/dangnh.cf\\\/\",\"name\":\"Mark's Blog\",\"description\":\"A blog about Programming and Technical Stuffs\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/dangnh.cf\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"vi\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/dangnh.cf\\\/#\\\/schema\\\/person\\\/8f3b9db3b250186af217fbeec88eda9c\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"vi\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d838feab6bbd5e774c608b656a29ab0d54981b88fa4b563a83d7635108b6c76e?s=96&d=retro&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d838feab6bbd5e774c608b656a29ab0d54981b88fa4b563a83d7635108b6c76e?s=96&d=retro&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d838feab6bbd5e774c608b656a29ab0d54981b88fa4b563a83d7635108b6c76e?s=96&d=retro&r=g\",\"caption\":\"admin\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Debug variables in Yii 2 - Mark's Blog","description":"debug yii2 easy","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/dangnh.cf\/vi\/2016\/04\/06\/variable-debug-in-yii-2\/","og_locale":"vi_VN","og_type":"article","og_title":"Debug variables in Yii 2 - Mark's Blog","og_description":"debug yii2 easy","og_url":"https:\/\/dangnh.cf\/vi\/2016\/04\/06\/variable-debug-in-yii-2\/","og_site_name":"Mark's Blog","article_publisher":"https:\/\/www.facebook.com\/dangtute","article_published_time":"2016-04-06T09:40:40+00:00","article_modified_time":"2018-01-14T04:58:43+00:00","og_image":[{"width":640,"height":388,"url":"https:\/\/dangnh.cf\/wp-content\/uploads\/2016\/04\/debug-excel.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_misc":{"\u0110\u01b0\u1ee3c vi\u1ebft b\u1edfi":"admin","\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc":"1 ph\u00fat"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/dangnh.cf\/2016\/04\/06\/variable-debug-in-yii-2\/#article","isPartOf":{"@id":"https:\/\/dangnh.cf\/2016\/04\/06\/variable-debug-in-yii-2\/"},"author":{"name":"admin","@id":"https:\/\/dangnh.cf\/#\/schema\/person\/8f3b9db3b250186af217fbeec88eda9c"},"headline":"Debug variables in Yii 2","datePublished":"2016-04-06T09:40:40+00:00","dateModified":"2018-01-14T04:58:43+00:00","mainEntityOfPage":{"@id":"https:\/\/dangnh.cf\/2016\/04\/06\/variable-debug-in-yii-2\/"},"wordCount":231,"commentCount":0,"image":{"@id":"https:\/\/dangnh.cf\/2016\/04\/06\/variable-debug-in-yii-2\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/debug-excel.jpg?fit=640%2C388&ssl=1","articleSection":["PHP"],"inLanguage":"vi","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/dangnh.cf\/2016\/04\/06\/variable-debug-in-yii-2\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/dangnh.cf\/2016\/04\/06\/variable-debug-in-yii-2\/","url":"https:\/\/dangnh.cf\/2016\/04\/06\/variable-debug-in-yii-2\/","name":"Debug variables in Yii 2 - Mark's Blog","isPartOf":{"@id":"https:\/\/dangnh.cf\/#website"},"primaryImageOfPage":{"@id":"https:\/\/dangnh.cf\/2016\/04\/06\/variable-debug-in-yii-2\/#primaryimage"},"image":{"@id":"https:\/\/dangnh.cf\/2016\/04\/06\/variable-debug-in-yii-2\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/debug-excel.jpg?fit=640%2C388&ssl=1","datePublished":"2016-04-06T09:40:40+00:00","dateModified":"2018-01-14T04:58:43+00:00","author":{"@id":"https:\/\/dangnh.cf\/#\/schema\/person\/8f3b9db3b250186af217fbeec88eda9c"},"description":"debug yii2 easy","breadcrumb":{"@id":"https:\/\/dangnh.cf\/2016\/04\/06\/variable-debug-in-yii-2\/#breadcrumb"},"inLanguage":"vi","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dangnh.cf\/2016\/04\/06\/variable-debug-in-yii-2\/"]}]},{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/dangnh.cf\/2016\/04\/06\/variable-debug-in-yii-2\/#primaryimage","url":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/debug-excel.jpg?fit=640%2C388&ssl=1","contentUrl":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/debug-excel.jpg?fit=640%2C388&ssl=1","width":640,"height":388},{"@type":"BreadcrumbList","@id":"https:\/\/dangnh.cf\/2016\/04\/06\/variable-debug-in-yii-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dangnh.cf\/"},{"@type":"ListItem","position":2,"name":"Debug variables in Yii 2"}]},{"@type":"WebSite","@id":"https:\/\/dangnh.cf\/#website","url":"https:\/\/dangnh.cf\/","name":"Mark's Blog","description":"A blog about Programming and Technical Stuffs","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dangnh.cf\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"vi"},{"@type":"Person","@id":"https:\/\/dangnh.cf\/#\/schema\/person\/8f3b9db3b250186af217fbeec88eda9c","name":"admin","image":{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/secure.gravatar.com\/avatar\/d838feab6bbd5e774c608b656a29ab0d54981b88fa4b563a83d7635108b6c76e?s=96&d=retro&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d838feab6bbd5e774c608b656a29ab0d54981b88fa4b563a83d7635108b6c76e?s=96&d=retro&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d838feab6bbd5e774c608b656a29ab0d54981b88fa4b563a83d7635108b6c76e?s=96&d=retro&r=g","caption":"admin"}}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2016\/04\/debug-excel.jpg?fit=640%2C388&ssl=1","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9w3NP-H","jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":112,"url":"https:\/\/dangnh.cf\/vi\/2017\/05\/25\/what-is-stdclass-and-dynamic-properties-in-php\/","url_meta":{"origin":43,"position":0},"title":"What is stdClass? And Dynamic Properties in PHP?","author":"admin","date":"Th\u00e1ng 5 25, 2017","format":false,"excerpt":"Well hello there, I\u2019m back If you are a curious person, like me, you must have wandered in the core code of PHP frameworks like Laravel or Yii, and you must have seen this\u00a0stdClass here and there. Now, let\u2019s see what is that and how it helps us to code\u2026","rel":"","context":"Trong &quot;PHP&quot;","block_context":{"text":"PHP","link":"https:\/\/dangnh.cf\/vi\/category\/web-development\/php\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2017\/05\/stdclass-trong-php.png?fit=365%2C268&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":124,"url":"https:\/\/dangnh.cf\/vi\/2017\/05\/25\/stdclass-la-gi-lam-the-nao-de-co-properties-dong-trong-php\/","url_meta":{"origin":43,"position":1},"title":"stdClass l\u00e0 g\u00ec? L\u00e0m th\u1ebf n\u00e0o \u0111\u1ec3 c\u00f3 Dynamic Properties trong PHP?","author":"admin","date":"Th\u00e1ng 5 25, 2017","format":false,"excerpt":"Ch\u00e0o c\u00e1c b\u1ea1n, m\u00ecnh l\u00e0 \u0110\u0103ng, v\u00e0 m\u00ecnh \u0111\u00e3 tr\u1edf l\u1ea1i r\u1ed3i \u0111\u00e2yy\u00a0 N\u1ebfu b\u1ea1n l\u00e0 1 ng\u01b0\u1eddi r\u1ea5t hay t\u00f2 m\u00f2 ngh\u1ecbch ng\u1ee3m, gi\u1ed1ng t\u00f4i, th\u00ec ch\u1eafc h\u1eb3n b\u1ea1n \u0111\u00e3 t\u1eebng lang thang trong core c\u1ee7a m\u1ea5y th\u1eb1ng PHP framework nh\u01b0 Laravel hay Yii, v\u00e0 ch\u1eafc cmn c\u00fa l\u00e0\u2026","rel":"","context":"Trong &quot;PHP&quot;","block_context":{"text":"PHP","link":"https:\/\/dangnh.cf\/vi\/category\/web-development\/php\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2017\/05\/stdclass-trong-php.png?fit=365%2C268&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":211,"url":"https:\/\/dangnh.cf\/vi\/2018\/06\/01\/trait-mixin-in-php\/","url_meta":{"origin":43,"position":2},"title":"Trait &#8211; Mixin in PHP?","author":"admin","date":"Th\u00e1ng 6 1, 2018","format":false,"excerpt":"Hi guys :) Nh\u01b0 c\u00e1c b\u1ea1n c\u00f3 l\u1ebd \u0111\u00e3 bi\u1ebft, PHP l\u00e0 1 ng\u00f4n ng\u1eef single inheritance, t\u1ee9c l\u00e0 n\u00f3 s\u1ebd c\u00f3 1 s\u1ed1 nh\u01b0\u1ee3c \u0111i\u1ec3m nh\u01b0: M\u1ea5t th\u1eddi gian & c\u00f4ng s\u1ee9c khi t\u00ecm hi\u1ec3u\/ch\u1ea1y h\u1ec7 th\u1ed1ng. V\u00ed d\u1ee5: 1 class c\u00f3 10 levels c\u00e1c class cha, th\u00ec v\u1ec1\u2026","rel":"","context":"Trong &quot;PHP&quot;","block_context":{"text":"PHP","link":"https:\/\/dangnh.cf\/vi\/category\/web-development\/php\/"},"img":{"alt_text":"Trait in PHP","src":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2018\/06\/retro-background-3101430_960_720.jpg?fit=960%2C540&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2018\/06\/retro-background-3101430_960_720.jpg?fit=960%2C540&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2018\/06\/retro-background-3101430_960_720.jpg?fit=960%2C540&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2018\/06\/retro-background-3101430_960_720.jpg?fit=960%2C540&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":367,"url":"https:\/\/dangnh.cf\/vi\/2020\/01\/20\/service-container-di-sanh-dieu-voi-laravel\/","url_meta":{"origin":43,"position":3},"title":"Service Container &#038; DI &#8220;s\u00e0nh \u0111i\u1ec7u&#8221; v\u1edbi Laravel","author":"admin","date":"Th\u00e1ng 1 20, 2020","format":false,"excerpt":"Hi, long time no see :D Laravel l\u00e0 m\u1ed9t framework n\u1ed5i ti\u1ebfng nh\u1ea5t trong c\u1ed9ng \u0111\u1ed3ng PHP, 1 ph\u1ea7n l\u00e0 v\u00ec c\u1ea5u tr\u00fac tuy\u1ec7t v\u1eddi c\u1ee7a n\u00f3. Khi n\u00f3i \u0111\u1ebfn architectural concepts c\u1ee7a Laravel, kh\u00f4ng th\u1ec3 kh\u00f4ng nh\u1eafc t\u1edbi Service Container. Khi b\u1ea1n \u0111\u1ee5ng \u0111\u1ebfn 1 b\u00e0i to\u00e1n l\u1edbn h\u01a1n,\u2026","rel":"","context":"Trong &quot;PHP&quot;","block_context":{"text":"PHP","link":"https:\/\/dangnh.cf\/vi\/category\/web-development\/php\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2020\/01\/1_SstfI6yiEWj1mrnFrLTUdA-e1579505803935.jpeg?fit=900%2C600&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2020\/01\/1_SstfI6yiEWj1mrnFrLTUdA-e1579505803935.jpeg?fit=900%2C600&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2020\/01\/1_SstfI6yiEWj1mrnFrLTUdA-e1579505803935.jpeg?fit=900%2C600&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2020\/01\/1_SstfI6yiEWj1mrnFrLTUdA-e1579505803935.jpeg?fit=900%2C600&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":283,"url":"https:\/\/dangnh.cf\/vi\/2018\/01\/12\/setup-nginx-php-mysql-phpmyadmin-macos-high-sierra\/","url_meta":{"origin":43,"position":4},"title":"Setup Nginx, PHP, MySQL and phpMyAdmin on macOS High Sierra","author":"admin","date":"Th\u00e1ng 1 12, 2018","format":false,"excerpt":"Recently I bought a Mac and with all the curiosity, I upgraded to the newest OS which is High Sierra. I heard a lot about the ease of setting up development environment on Mac with package manager like brew Beside, I have used Linux and Windows simultaneously for almost a\u2026","rel":"","context":"Trong &quot;Environment&quot;","block_context":{"text":"Environment","link":"https:\/\/dangnh.cf\/vi\/category\/web-development\/environment\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2018\/01\/mac-for-hackers-set-up-homebrew-install-update-open-source-tools.1280x600.jpg?fit=1200%2C563&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2018\/01\/mac-for-hackers-set-up-homebrew-install-update-open-source-tools.1280x600.jpg?fit=1200%2C563&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2018\/01\/mac-for-hackers-set-up-homebrew-install-update-open-source-tools.1280x600.jpg?fit=1200%2C563&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2018\/01\/mac-for-hackers-set-up-homebrew-install-update-open-source-tools.1280x600.jpg?fit=1200%2C563&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2018\/01\/mac-for-hackers-set-up-homebrew-install-update-open-source-tools.1280x600.jpg?fit=1200%2C563&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":473,"url":"https:\/\/dangnh.cf\/vi\/2025\/11\/05\/ban-dung-cho-developer\/","url_meta":{"origin":43,"position":5},"title":"Standing desk &#8211; V\u1eadt trang tr\u00ed \u0111\u1eaft ti\u1ec1n hay m\u1eb9o hack productivity?","author":"admin","date":"Th\u00e1ng m\u01b0\u1eddi m\u1ed9t 5, 2025","format":false,"excerpt":"Mua c\u00e1i b\u00e0n \u0111\u1ee9ng - standing desk, t\u00f4i t\u01b0\u1edfng m\u00ecnh s\u1ebd th\u00e0nh si\u00eau nh\u00e2n. Ng\u01b0\u1eddi ta qu\u1ea3ng c\u00e1o b\u1ea3o \u0111\u1ee9ng l\u00e0m vi\u1ec7c s\u1ebd t\u1eadp trung h\u01a1n, kh\u1ecfe l\u01b0ng h\u01a1n, code s\u01b0\u1edbng h\u01a1n. C\u00f2n th\u1ef1c t\u1ebf th\u00ec... N\u00f3 th\u00e0nh c\u00e1i c\u1edb ho\u00e0n h\u1ea3o \u0111\u1ec3... kh\u00f4ng ng\u1ed3i y\u00ean. L\u00fac code \u0111\u01b0\u1ee3c, t\u00f4i\u2026","rel":"","context":"Trong \"productivity hack\"","block_context":{"text":"productivity hack","link":"https:\/\/dangnh.cf\/vi\/tag\/productivity-hack\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2025\/11\/image-1.png?fit=800%2C1200&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2025\/11\/image-1.png?fit=800%2C1200&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2025\/11\/image-1.png?fit=800%2C1200&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/dangnh.cf\/wp-content\/uploads\/2025\/11\/image-1.png?fit=800%2C1200&ssl=1&resize=700%2C400 2x"},"classes":[]}],"_links":{"self":[{"href":"https:\/\/dangnh.cf\/vi\/wp-json\/wp\/v2\/posts\/43","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dangnh.cf\/vi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dangnh.cf\/vi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dangnh.cf\/vi\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dangnh.cf\/vi\/wp-json\/wp\/v2\/comments?post=43"}],"version-history":[{"count":3,"href":"https:\/\/dangnh.cf\/vi\/wp-json\/wp\/v2\/posts\/43\/revisions"}],"predecessor-version":[{"id":262,"href":"https:\/\/dangnh.cf\/vi\/wp-json\/wp\/v2\/posts\/43\/revisions\/262"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dangnh.cf\/vi\/wp-json\/wp\/v2\/media\/46"}],"wp:attachment":[{"href":"https:\/\/dangnh.cf\/vi\/wp-json\/wp\/v2\/media?parent=43"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dangnh.cf\/vi\/wp-json\/wp\/v2\/categories?post=43"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dangnh.cf\/vi\/wp-json\/wp\/v2\/tags?post=43"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}