This topic created in 1904 days ago, the information mentioned may be changed or developed.
最近刚接触 PHP,手里有一套远古时期的源码,里面有一个点击按钮切换状态的功能,使用了大量这样的语句:if ($a == 1) { $a = 2; } else if ($a == 2) { $a = 7; }……,加起来能有上万个 if,看着实在有点不舒服,于是就将其改为了 array 。结果改完了之后才发现 php 的变量在请求结束后就会清空,每一次请求都要初始化一遍 array 。
想问一下,就像这种在代码运行期间不会修改的映射数据,PHP 业界上一般都是怎么处理的?以前写 C#和 Java 的时候用惯 static 变量了,如果让我用 redis 啥的总感觉还是有那么一点点慢。
(补充一下,这个点击按钮切换状态的功能是这套源码的核心功能,估计至少 50%的请求会落在这上面)
3 replies 2021-02-11 14:27:36 +08:00  | | 1 GGGG430 Feb 11, 2021 via iPhone 1 将 array 序列化 serialize 后,放在 apcu 里面,这是个代码层面的内存缓存 |
 | | 3 carlclone Feb 11, 2021 via Android fpm 的 worker 是常驻的,扩展只初始化一次,还可以写成 c 扩展 |