github.com/drud/ddev@v1.21.5-alpha1.0.20230226034409-94fcc4b94453/pkg/ddevapp/global_dotddev_assets/commands/web/xdebug (about) 1 #!/bin/bash 2 3 ## #ddev-generated 4 ## Description: Enable or disable xdebug 5 ## Usage: xdebug on|off|enable|disable|true|false|status 6 ## Example: "ddev xdebug" (default is "on"), "ddev xdebug off", "ddev xdebug on", "ddev xdebug status" 7 ## Execraw: false 8 ## Flags: [] 9 10 if [ $# -eq 0 ] ; then 11 enable_xdebug 12 exit 13 fi 14 15 xdebug_version=$(php --version | awk '/Xdebug v/ {print $3}') 16 17 case $1 in 18 on|true|enable) 19 enable_xdebug 20 ;; 21 off|false|disable) 22 disable_xdebug 23 ;; 24 status) 25 case ${xdebug_version} in 26 v3*) 27 status=$(php -r 'echo ini_get("xdebug.mode");' 2>/dev/null) 28 if [[ "${status}" =~ .*"debug".* ]]; then 29 result="xdebug enabled" 30 else 31 result="xdebug disabled" 32 fi 33 ;; 34 v2*) 35 status=$(php -r 'echo ini_get("xdebug.remote_enable");') 36 if [ "${status}" = "1" ]; then 37 result="xdebug enabled" 38 else 39 result="xdebug disabled" 40 fi 41 ;; 42 *) 43 result="xdebug disabled" 44 ;; 45 esac 46 47 echo $result 48 ;; 49 *) 50 echo "Invalid argument: $1" 51 ;; 52 esac