Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用php文件将mysql获取结果存储在文本文件中,并在需要时使用MVC在视图中加载,这对吗_Php_Mysql_Model View Controller - Fatal编程技术网

使用php文件将mysql获取结果存储在文本文件中,并在需要时使用MVC在视图中加载,这对吗

使用php文件将mysql获取结果存储在文本文件中,并在需要时使用MVC在视图中加载,这对吗,php,mysql,model-view-controller,Php,Mysql,Model View Controller,我设计了我的模型视图控制器。我想做的是将mysql获取的查询数据存储到php文件或localStorage或sessionStorage中,这样存储的信息就可以重复使用,而不会一次又一次地干扰数据库。我也可以将这些信息保存到php会话中,但使用大量会话可能会导致服务器速度减慢 在这种特殊情况下,将信息存储在上述存储中是否是一种良好的做法?不,完全不是。您的数据库在执行这些任务时速度最快、效率最高,因此使用会话之类的东西来存储数据是个坏主意。不过,您可以使用类似ORM的工具查看持久对象。您尝试执行

我设计了我的模型视图控制器。我想做的是将mysql获取的查询数据存储到php文件或localStorage或sessionStorage中,这样存储的信息就可以重复使用,而不会一次又一次地干扰数据库。我也可以将这些信息保存到php会话中,但使用大量会话可能会导致服务器速度减慢


在这种特殊情况下,将信息存储在上述存储中是否是一种良好的做法?

不,完全不是。您的数据库在执行这些任务时速度最快、效率最高,因此使用会话之类的东西来存储数据是个坏主意。不过,您可以使用类似ORM的工具查看持久对象。

您尝试执行的操作的概念称为“缓存”。这里有一篇文章介绍了一种简单的方法,有点像你所说的:

它是否是“良好实践”在很大程度上取决于您的应用程序。如果是一个SQL查询,其结果不会经常更改(您可能希望重新思考在这些情况下执行查询的原因),并且是一个运行起来非常耗时的复杂查询,那么就去做吧。我建议不要这样做,除非标准适用,因为使用数据库是有原因的:您希望它是动态的。大多数数据库可以处理大量查询,您的查询和数据可以针对经常运行的查询进行优化

您是否注意到运行查询需要很长时间?您是否已将问题与数据库隔离?最重要的是:数据是否经常更改,您的用户是否关心他们的视图是否不更新

我应该补充一点,在会话存储中存储这样的东西很少是个好主意。您使用会话存储的唯一用途是用户名或匿名用户的购物车。从不使用查询缓存