gpt4 book ai didi

php - 在 PHP 中为 PDO 查询创建容器函数

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

因为我发现 PDO 执行非常难以记住,并且发现自己回顾以前的项目或其他网站只是为了记住如何从数据库中选择行,所以我决定尝试创建自己的包含 PDO 执行的函数只需插入我需要的数据即可。虽然看起来比实际要简单得多......

到目前为止,我已经成功地创建了一个连接函数,但是现在要创建一个选择函数时,我因多种原因而感到困惑。
对于初学者来说,可以将不同数量的参数传递给函数,其次我不知道应该传递给函数什么以及传递的顺序。

到目前为止,函数看起来像这样。 为了让我保持理智,我在其中添加了“id”部分,这样我就可以看到在最终结果中我到底需要完成什么,并且在我弄清楚如何去做时将相应地替换为变量。

function sql_select($conn, **what to put here**) {
try {
$stmt = $conn->prepare('SELECT * FROM myTable WHERE id = :id');
$stmt->execute(array('id' => $id));

$result = $stmt->fetchAll();

if ( count($result) ) {
foreach($result as $row) {
print_r($row);
}
} else {
return "No rows returned.";
}
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
}

到目前为止,我确定函数需要做的是

  • 连接到数据库(使用另一个函数生成 $conn 变量,已经完成)
  • 选择表格
  • 指定列
  • 提供匹配的输入
  • 允许可能的参数,例如 ORDER by 'id' DESC

最后,我需要创建一个函数来插入、更新删除 行数据库。

或者,是否有比函数更好的方法来执行此操作?

如果有人能帮助我实现简化 PDO 执行的雄心壮志,我​​将不胜感激。提前致谢!

最佳答案

首先,我不知道你从哪里得到 10 行

$stmt = $conn->prepare('SELECT * FROM myTable WHERE id = ?');
$stmt->execute(array($id));
$result = $stmt->fetchAll();

是您需要的所有代码,它实际上是 行,结果是一个您可以在任何地方使用的常规 PHP 数组。无需任何 PDO 代码。无需旧的 mysql 代码。

Lastly from this I would need to create a function to insert, update and delete rows from the database.

永远不要这样做。

请看我的解释herehere基于如果继续这种方式你最终会得到什么的完美例子。

accomplish my ambitions to simply simplify PDO executions

这确实是一个伟大的抱负。然而,只有少数人成功地实现了真正真正的简化,但大多数结果都产生了实际上更复杂的代码。对于初学者,您可以尝试第一个链接答案中的代码。拥有一个由多个此类函数组成的类确实会改善您使用 PDO 的体验。

关于php - 在 PHP 中为 PDO 查询创建容器函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20762998/

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