gpt4 book ai didi

php - 程序化php/mysql到面向对象的问题

转载 作者:行者123 更新时间:2023-11-29 14:20:12 26 4
gpt4 key购买 nike

这是我尝试以面向对象形式编写的原始代码..

$posResult = mysql_query("SELECT MAX(position)+1 FROM todo");

if(mysql_num_rows($posResult))
list($position) = mysql_fetch_array($posResult);

这就是我现在的位置....我想我需要bind_result?另外,我对 mysql_fetch_array 有问题...

if($stmt = $this->HH->Database->prepare("SELECT MAX(position)+1 FROM todo")) {
$stmt->execute();
$stmt->store_result();

if($stmt->num_rows != FALSE) {
list($position) = mysql_fetch_array($posResult);
}
}

有人可以建议如何纠正这个问题吗?

最佳答案

看起来您正在转向 PDO,这很棒,这是一种更好的连接方式,但您仍在尝试使用一些旧的 mysql_* 命令,这些命令不会不工作。虽然获取数据的方法有很多种,但这是我最常用的方法:

if($stmt = $this->HH->Database->prepare("SELECT MAX(position)+1 FROM todo")) {
$stmt->execute();

$stmt->setFetchMode(PDO::FETCH_INTO, new yourClassName);
foreach($stmt as $yourClassObject)
{
$someVar=$yourClassObject->QueryColumnName;
// or
$this->someProperty=$yourClassObject->QueryColumnName;
}
}

我通常有一个与查询结果匹配的类,因此我使用 FETCH_INTO 但您可以使用不同的方法,例如返回索引数组、关联数组或其他方法。

关于php - 程序化php/mysql到面向对象的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11856248/

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