在服务器上用PHP处理Excel公式


Processing Excel formulas on the server in PHP

我有一个相当复杂的电子表格公式。现在我正在使用PHPExcel将电子表格加载到内存中,并且我将公式输入的单元格值设置为来自前端表单的值(使用ajax),获得计算结果并将其发送回客户端。

这是最好的方法吗?还是应该将公式转换为纯php?

如果这是一个ok的方法,我担心并发性和内存使用。

电子表格不是那么大,小于1000个单元格。我如何计算并发性的阈值(人们在前端点击计算)和服务器上的内存使用?

在平衡性能的同时,我可以采取哪些步骤来优化这个算法(例如缓存)?

对于大量并发用户的ajax请求,这样做会遇到问题,因为这些http请求没有持久性,因此需要为每个请求加载电子表格文件。它所保证的是,每个请求都独立运行,并具有自己的电子表格副本,因此单个用户的请求不会影响任何其他用户的请求。

另一个极端是把所有的Excel逻辑用PHP重写。你没有给出你的电子表格公式的复杂程度,所以很难判断这个任务有多复杂。

第三种选择是只使用PHPExcel的计算引擎,直接向它提供表单值和公式。这消除了为每个请求加载电子表格文件的时间和内存开销,因此可能是最简单和最有效的选择。您可以在PHP发行版的/Tests目录下的Quadratic2.php示例文件中找到一个示例。