gpt4 book ai didi

PHP 使用 Intelephense 调用 mysqli 的正确方法

转载 作者:搜寻专家 更新时间:2023-10-31 20:57:24 24 4
gpt4 key购买 nike

这段代码触发了我的编辑器的错误提示:

/**
* Connect to database
*/
public function link() {
global $config; mysqli_report(MYSQLI_REPORT_ERROR);
try {
return new \mysqli($config['db_hostname'], $config['db_username'], $config['db_password'], $config['db_name']);
} catch (\exception $e) {
throw new \exception($e->getMessage(), $e->getCode());
}
}

Expected 6 arguments. Found 4.intelephense(10005)

如果我只使用:

return new \mysqli($config['db_hostname'], $config['db_username'], $config['db_password'], $config['db_name'],null,null);

谢谢大家的回答;也 deceze 谁以错误的方式纠正了我以捕获异常;

这是编辑过的代码:

/**
* Connect to database
*/
public function link() {
global $config; mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
try {
return new \mysqli($config['db_hostname'], $config['db_username'], $config['db_password'], $config['db_name'], ini_get('mysqli.default_port'), ini_get('mysqli.default_socket'));
} catch (\exception $e) {
echo 'Cannot connect to a database server'; die();
}
}

注意,这是为了使用 namespace 来处理类...

最佳答案

intelephense 插件使用来自 PhpStorm 的 stub 。作者已经提交了一个 PR 来解决这个问题(以及其他带有可选参数的函数):https://github.com/JetBrains/phpstorm-stubs/pull/520 .

一旦合并并更新 stub ,您应该不会再收到 vscode 中报告的问题。

应该不需要更改您的构造函数调用,它是有效的代码并且可以毫无问题地执行。

关于PHP 使用 Intelephense 调用 mysqli 的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54865658/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com