gpt4 book ai didi

php - 在 PHP 中缓存来自 MySQL 的数据?

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

是否可以请求我的数据库中的所有数据并从中创建对象并将其保存到数组或其他东西中,所以我只需要调用一次数据库然后我就可以使用我的本地数组?如果是,它是如何完成的?

public function getAllProjects(){

$query="SELECT * FROM projects";
$result=mysql_query($query);
$num=mysql_numrows($result);
while ($row = mysql_fetch_object($result)) {
// save object into array
}
}

public function fetchRow($row){
include("Project.php");
$project = new Project();

$id=$row->id;
$project->setId($id);

$title=$row->title;
$project->setTitle($title);

$infos=$row->info;
$project->setInfo($infos);

$text=$row->text;
$project->setText($text);

$cate=$row->category;
$project->setCategory($cate);

return $project;
}

例如,如果我有这段代码。如何将对象正确存储到数组中,从中获取数据?为什么我不能制作多个“项目”类型的对象?

最佳答案

让我们忽略内存不足的事实。

如果您将所有内容都放在一个数组中,您将不再拥有关系数据库的功能。
尝试在 php 中搜索一个多兆字节的多维数组,并为长时间的咖啡休息时间做好准备。如果你正在考虑做这样的事情是因为你觉得数据库很慢......那么你应该学习数据规范化和索引的正确使用。
没有 NoSQL 不是答案。
抱歉打爆了你的气球。

编辑添加:您可以使用内存缓存来存储一些昂贵流程的最终产品。不要费心存储琐碎的查询结果,mysql 的内部缓存针对这些进行了非常优化。

关于php - 在 PHP 中缓存来自 MySQL 的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12580091/

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