gpt4 book ai didi

php - 无法关闭pdo

转载 作者:行者123 更新时间:2023-11-29 11:39:59 25 4
gpt4 key购买 nike

我遇到问题,我无法关闭 pdo,$pdo=null 未激活,谢谢:)

function about_post(){
include('connect.php');
$getId= $_GET['getid'];
return $sql = $pdo->query("SELECT p.post_id,p.post_title,p.post_by, p.post_time,p.post_view, u.id_user,u.username,u.info,u.avatar FROM post p, user u WHERE p.post_id='$getId' && p.post_by=u.id_user");
} //connect

$about_content= about_post();
while ( $row = $about_content->fetch(PDO::FETCH_ASSOC)) { ?>
<p><?php echo $row['info']; ?></p>
</div>
</div>
<?php } $pdo=null;
?>

最佳答案

以这种方式更改您的脚本:

include_once( 'connect.php' );

function about_post()
{
global $pdo;
$getId= $_GET['getid'];
(...)
}

include_once()include() 不同,因为如果文件已经加载,php 会忽略再次加载它:通过这种方式,您不需要有多个连接1

global $pdo:通过这种方式,当您在函数内部使用 $pdo 变量时,您引用在函数作用域之外定义的 $pdo 变量.

<小时/>

1 实际上,这并不完全正确:在原始代码中,在函数内使用 include() ,每次调用该函数时都会有一个新连接。在函数外部使用 include() ,可能(我不知道你的文件中有什么)只是用新连接覆盖旧连接。无论如何,include_once() 是适合您的具体情况的最佳解决方案。 (我知道这个解释可能很晦涩,但我的英语很不充分。如果有好心人想要更好地解释它,请随意做...)

<小时/>

了解更多关于variable scope的信息

关于php - 无法关闭pdo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35962084/

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