xdebug 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #!/usr/bin/env bash
  2. S=$(bin/clinotty cat /usr/local/etc/php/php.ini | grep -iGc 'xdebug.mode = off');
  3. xdebug_status() {
  4. if [[ $S == 1 ]]; then
  5. echo "Xdebug debug mode is disabled."
  6. else
  7. echo "Xdebug debug mode is enabled."
  8. fi
  9. }
  10. xdebug_toggle() {
  11. if [[ $S == 1 ]]; then
  12. xdebug_enable
  13. else
  14. xdebug_disable
  15. fi
  16. }
  17. xdebug_enable() {
  18. if [[ $S == 1 ]]; then
  19. bin/root sed -i -e 's/^xdebug.mode = off/xdebug.mode = debug/g' /usr/local/etc/php/php.ini
  20. bin/cli kill -USR2 1
  21. echo "Xdebug debug mode has been enabled."
  22. else
  23. echo "Xdebug debug mode is already enabled."
  24. fi
  25. }
  26. xdebug_disable() {
  27. if [[ $S == 0 ]]; then
  28. bin/root sed -i -e 's/^xdebug.mode = debug/xdebug.mode = off/g' /usr/local/etc/php/php.ini
  29. bin/cli kill -USR2 1
  30. echo "Xdebug debug mode has been disabled."
  31. else
  32. echo "Xdebug debug mode is already disabled."
  33. fi
  34. }
  35. firstArgLetter="$(echo "$1" | head -c 1)"
  36. if [[ $firstArgLetter == "d" ]]; then
  37. xdebug_disable
  38. elif [[ $firstArgLetter == "e" ]]; then
  39. xdebug_enable
  40. elif [[ $firstArgLetter == "t" ]]; then
  41. xdebug_toggle
  42. elif [[ $firstArgLetter == "s" ]]; then
  43. xdebug_status
  44. else
  45. printf "Please specify either 'disable', 'enable', 'status' or 'toggle' as an argument.\nEx: bin/xdebug status\n"
  46. fi