【发布时间】:2011-04-18 09:29:45
【问题描述】:
我有一个函数需要包含一个文件,但是这个函数被使用了200到300次,这显然会导致效率问题,有没有办法在函数内部优化这个? (我知道有很多方法可以解决这个问题,但它会对整个应用程序造成太大影响)
我只是举个小例子,这不是全部功能。
function getString(arrayName, strValue){
inclue('stringArrays.php');
return $$arrayName[strValue];
}
我尝试使用 include_once,但这也不起作用。
提前致谢。
【问题讨论】:
-
什么效率问题?包含不会比将代码放在同一个文件中更影响效率。不管你叫多少次
-
您的意思是 getString() 被调用了 200 到 300 次(在这种情况下包含不应多次发生)还是您有 200 到 300 个不同的函数,每个函数都包含 stringArrays .php(这是一个严重的性能问题)?
-
@Stewie:它使脚本变慢,因为 PHP 必须去获取文件并包含它,确定它是否发生 50 到 100 次没有问题,但是当你执行 700 次时(就像它是发生)你可以看到问题。
-
@Mark:它是一个函数,没有办法让文件只包含一次,或者在不使stringArrays.php中的每个var都全局的情况下形成外部,这会对应用程序造成一点影响.
-
我不这么认为,无论如何,不要只提供文件名,而是提供完整路径或在 set_include_path(); 中设置正确的路径;这样 php 就不必四处寻找文件了。