参考https://blog.csdn.net/u014095878/article/details/107042936和https://n-archives.net/articles/vscode/php-debug-with-xampp-xdebug-vscode/2-vscode.html#i-1-2等
[Xdebug]
zend_extension = D:\program\php8\ext/php_xdebug-3.1.5-8.1-vs16-x86_64.dll
xdebug.mode = debug
xdebug.start_with_request = yes
流程:
- 下载安装各软件
- php一定要安装线程安全版本,
- vscode安装三个插件PHP Debug,PHP Intelephense,PHP server,
- 在https://xdebug.org/download下载线程安全版本的xdebug到php/ext,
- PHP server插件里可以设置端口,项目访问路径等,(建议vscode直接打开项目根路径,不设置phpserver的访问路径,默认是".",否则容易报错找不到项目),
- php安装路径下把php.ini-production复制粘贴改名php.ini,在最后添加上面的[Xdebug]配置(这是3.XX版本的配置,具体看vscode上php debug插件的描述)
- 在launch.json里添加Listen for Xdebug的配置,
- 点击Listen for Xdebug左边的绿三角,代码里打断点,
- 代码文件里右键php server:serve project运行项目,
- 项目端口是3000,由php server的配置决定,跟其他插件无关。然后访问对应页面即可
<?php
try {
$pdo_conn = new PDO( 'pgsql:host=localhost; dbname=study;', 'DB用户名', 'DB密码' );
foreach($pdo_conn->query('select * from public.user') as $row) {
print_r($row);
}
foreach($pdo_conn->query('select * from public.user') as $row) {
echo '<br/>'.$row['id'].':'.$row['name'];
}
} catch(PDOException $e) {
var_dump($e->getMessage());
}
$pdo_conn = null;
其他问题:
途中发现PDO drivers始终配不好,参考https://blog.csdn.net/weixin_42188677/article/details/112610016单独配置成功了apache+php8+postgresql,但无法使用vscode进行debug。回头发现已经phpinfo里postgre已经没问题。 postgresql默认用户名postgres,密码安装时会设置。连接数据库时需要使用。
|