我需要一种有效的方法来处理PHP中的3D矩阵。仅限数字索引,所有数据都将是双精度数,但如果真的需要,可以更改为整数。
是否有便携式方式有效地完成这项工作?
是的!我知道PHP不是数字运算的明显选择,但这是一个很难的约束,我无法改变它。
答案 0 :(得分:2)
高效的数据表示和PHP通常不会出现在同一个句子中,所以这样做绝对不容易。
如果您只是使用数字索引,那么SplFixedArray
相对于内置数组类型是一个相当大的改进;好处将首先在内存占用和性能第二。
您可以使用典型的嵌套数组方案来表示3D矩阵,或者您也可以使用一维数组并手动在(x,y,z)到(i)之间进行转换。在后一种情况下,您应该期望内存占用量有所减少,但性能也可能受到影响。