[Windows/Linux] PHP “exec” missing environment variable causing command not to run

In a recent project, I am finding way to display current git branch on the backend dashboard.
Without a application dependent library, executing CLI git seems to be the fastest way.
i.e. The exactly same syntax as we use in bash/cmd/powershell.

However, it worked in production/staging Linux machine, but not in local Windows machine.
It does work if I specify the absolute path C:\Program Files\Git\bin\git.exe, but it’s not optimal because it will be machine dependent.

After a while, I figure out the environment PATH variable is missing in Windows that cause git not being picked up.
The trick is, add this line before exec call to:

MySQL Percona Galera Cluster with phpMyAdmin export

Galera Cluster have some limitations, for example all tables MUST have primary key.

In recent version, pxc_strict_mode is introduced to avoid unsupported features that can risk your data and server stability

One common trap is that SQL file exported with phpMyAdmin create index AFTER creating the table and inserting data.

During import, there is a transit state that table have no primary key and data need to insert to table, thus trigger the pxc_strict_mode error.

Continue reading “MySQL Percona Galera Cluster with phpMyAdmin export”

[Windows Bash] Use bash instead of cmd Intellij/Android Studio/WebStorm/PHPStorm

If you love bash & Linux command but forced to use Windows for development, you will love this trick.

The console is colored like on Linux and autocomplete works way better than cmd / PowerShell.

Requirement: Git installed with git-bash

Continue reading “[Windows Bash] Use bash instead of cmd Intellij/Android Studio/WebStorm/PHPStorm”