我正在编写一个函数,它向调用者返回一个值数组。让我们说阵列是:
$arr['keyN'] = $valueN;
如果有任何' $ keyN'没有价值;它的值输入为零。
我的问题纯粹是从性能的角度来看:给密钥值零是否更好或者不给它任何值,并让调用者测试它的存在是否(isset($ arr [$ keyN} ]))....然后执行代码?
我问这个的原因是因为给数组键一个零值将消耗主内存并测试它的存在将消耗CPU周期。那么占用一些内存空间(零值)还是不给键分配任何内容并让代码测试它的存在会更好吗?
答案 0 :(得分:0)
我认为最好不要分配任何内容,因此该值将为NULL,这意味着在“simbolic表”中没有值存储到该变量。与C语言不同,PHP以动态的方式分配内存,即使它没用也会有内存“阻塞”。
在这里,我为您提供阅读的起始链接:http://www.php.net/manual/pt_BR/internals2.variables.intro.php
答案 1 :(得分:-1)
PHP是一种SERVER SIDE语言;所以,除非您将答案发送到客户端浏览器,否则客户端系统不会受此影响;并且在这种诅咒传输数据的情况下,应该更好地传递NULL
值...
在服务器端,php.ini中有一些行设置了允许的数据传输的大小和执行时间
结果,如果您想将结果发送到客户端,请传递值...
查看此链接以获取对您有用的其他信息
Memory optimization in php array