PHP 8.0兼容处理

PHP 8.0: ReflectionParameter::getClass())

在 php8.0中使用此方法会报弃用的错误,需要改成

// php8之前写法
$className = $reflectionParam->getClass();
// php8之后写法
$className = $reflectionParam->getType() && !$reflectionParam->getType()->isBuiltin() 
   ? new ReflectionClass($reflectionParam->getType()->getName())
   : null;

xdebug3配置

xdebug2配置

zend_extension=”xdebug.so”

xdebug.remote_enable=on

xdebug.remote_port=9001

xdebug.remote_host=127.0.0.1

在升级3.0版本后,remote_enable 被mode 取代,remote_host被 client_host 取代,remote_port改为 client_port,默认为9003端口,client_host默认为 localhost,所以3之后的配置为

zend_extension=”xdebug.so”
xdebug.mode=debug
xdebug.client_host=127.0.0.1

我本地是9003端口,所以此处省略端口配置