这是我在stackoverflow中的第一个问题,希望你帮助我:)。
所以这是我的问题:
function find_employer_by_email($email){
global $connection;
$q="SELECT * FROM employers WHERE email='{$email}' ";
$res=mysqli_query($connection, $q);
if (mysqli_num_rows($res)>0) {
return $employer = mysqli_fetch_assoc($res);
}
}
因为我的函数没有返回查询本身,而是返回了关联数组,我应该怎样做才能释放结果(mysqli_free_result)而不会弄乱我的函数?
答案 0 :(得分:1)
由于您要将mysqli_fetch_assoc
的结果分配给$employer
,为什么不让这部分功能看起来像
$employer = null;
if (mysqli_num_rows($res) > 0) {
$employer = mysqli_fetch_assoc($res);
$res->close();
return $employer;
这样,你将永远释放你的结果,返回正确的对象,如果没有找到结果,则显式返回null。