Sunday, September 24, 2017

How to print DEBUG in PHP

While I am new to PHP, sometimes I find it is hard to debug and something in PHP.

I added some notes here will help me to summarize the way that I used to debug.

Predefined constants


PHP has a large number of predefined constants. we have seven most important, most practical and most useful PHP Magic Constants.

__FILE__ – The full path and filename of the file.
__DIR__ – The directory of the file.
__FUNCTION__ – The function name.
__CLASS__ – The class name.
__METHOD__ – The class method name.
__LINE__ – The current line number of the file.
__NAMESPACE__ – The name of the current namespace

Print variables


 

1. var_dump

[code lang="php"]

void var_dump ( mixed $expression [, mixed $... ] )

[/code]

Print a variable and continues to execute the script

I have a snippet code in VSCode for the function:

[code lang="javascript"]

"Echo to webpage": {
"prefix": "duk--echo",
"body": [
"echo('<pre class=\"duk--\">' . __FILE__ . ':' . __LINE__ ); var_dump( $data ); echo('</pre>');"
],
"description": "Echo to webpage"
},

[/code]

2. die


This language construct is equivalent to exit().









[code lang="php"]
void exit ([ string $status ] )
[/code]


My snippet code:
[code lang="javascript"]
"Die to webpage": {
"prefix": "duk--die",
"body": [
"var_dump( $1 ); die();"
],
"description": "Echo to webpage"
}
[/code]

That will print a variable before existing.


Error Handling Functions



Method:
[code lang="php"]
bool error_log ( string $message [, int $message_type = 0 [, string $destination [, string $extra_headers ]]] )
[/code]

Links



var_dump: http://php.net/manual/en/function.var-dump.php
Error Handling Functions: http://php.net/manual/en/ref.errorfunc.php
die: http://php.net/manual/en/function.die.php

Saturday, September 16, 2017

How to create snippets code in VSCode?

Software: VS-Code version 1.12.2

Snippets code are templates that make it easier to enter repeating code patterns, such as loops or conditional-statements.

For me, I use snippets code for some statements that I use for debugging with PHP.

Here is how to create snippets code for debugging in PHP.

In VS Code, Open Preferences -> User Snippets --> Choose a Language (for me PHP)

Add some code below.

[gist https://gist.github.com/vanduc1102/13d92493c33fd5e936a974c3e7adfb34 /]

https://gist.github.com/vanduc1102/13d92493c33fd5e936a974c3e7adfb34.js

From now, I can use my snippets code by typing prefix.

Friday, September 15, 2017

Colorizing logs with iTerm 2 console

Software: Iterm2 version 3.0.15

While developing web applications with iTerm2, I found it is quite difficult to read the logs come from Server.

Luckily, I use iTerm 2 so that I can config colorizing the logs simply.

Let begin.

In iTerm 2 -> open Preference -> Profile -> Advanced -> Trigger

iterm2-trigger-regex

The Regular Expression reference is conformed ICU's Regular Expressions

Result:

iterm-2-logger-colorized

Regex lists:

[code lang="cpp"]

(?i:.*(fatal).*)

(?i:.*(error).*)

(?i:.*(warn).*)

(?i:.*(debug).*)

(?i:.*(info).*)

[/code]