我有这样的代码片段:
$pstmt = $connection->prepare($sql);
foo($pstmt);
现在我想记录"foo"方法,即需要准备好的语句。
但我只找到mysqli_stmt
类。
开始编辑
"更完整"的示例
$connection = pwmMySQLHelper::getConnection();
$pstmt = $connection->prepare($sql);
$pstmt->bind_param("s", $fbToken);
toJSON($pstmt);
$pstmt->close();
$connection->close();
现在是toJSON($psm)
函数(这是上面的foo($ps)
/**
* @param $data mysqli_stmt A prepated statement
*/
function toJSON($pstmt)
{
$pstmt->execute();
$result = $pstmt->get_result();
$rarray = [];
while ($row = $result->fetch_assoc()) {
$rarray[] = $row;
}
$result->close();
echo json_encode($rarray);
}
问题是关于PHPDoc的。我找不到与"mysqli_stmt"不同的类,但是使用此代码,PHPStorm 无法识别"execute()","get_result()","fetch_assoc()"和"close()"。我想教PHPStorm,这是一个准备好的声明。
我希望编辑有所帮助。
结束编辑
我正在使用PHPstorm,mysqli_stmt
它无法找到"execute()"等。
博士;
如何将预准备语句记录为参数,因为mysqli_stmt
对于 PHPStorm 来说是不够的。
变量的名称和函数参数的名称不匹配。在 PHPDoc 中,您有$data
功能,您有$pstmt
。将 PHPDoc 从 $data
更改为 $pstmt
。之后,它应该按预期工作。