这段代码触发了我的编辑器的智能错误:
/**
* 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());
}
}预期的6个论点。发现4.智力(10005)
如果我用:
return new \mysqli($config['db_hostname'], $config['db_username'], $config['db_password'], $config['db_name'],null,null);谢谢大家的回答;还有欺骗,谁纠正我错误的方式,以抓住例外;
这是经过编辑的代码:
/**
* 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();
}
}注意,这是用于使用名称空间的类.
发布于 2019-02-28 15:11:54
智能插件使用来自PhpStorm的存根。作者已经提交了一个PR来修复这个问题(以及其他带有可选参数的函数):https://github.com/JetBrains/phpstorm-stubs/pull/520。
一旦合并并更新存根,您就不应该再收到vscode中报告的问题。
不需要更改构造函数调用,它是有效的代码,执行时不会出现问题。
https://stackoverflow.com/questions/54865658
复制相似问题