php引入php文件_php引入类执行效率最高的方法
今天在优化我博客的时候、总觉得include()方法的效率不高、所以就想着换一种方法、因为我是自学的PHP、在写我博客代码的时候一边学一边写的、所以很多方法都不用的最好的方法、之所以要用PHP写博客代码、是因为PHP的空间比起Java和.NET的空间要便宜很多呢、下面我就总结一下PHP导入文件的高效率方法
1、include()
include(/path/to/filename)
include()语句将在其被调用的位置处包含一个文件、包含一个文件与在该语句所在位置复制制定文件的数据具有相同内容的效果、使用include()时可以忽略括号
可以根据条件来执行include()语句、在条件语句中使用include()有个怪现象、它必须包围在语句块大括号中、或者用其他语句包围符括起来
2、include_once()
include_once(filename)
include_once()函数的作用与include相同、不过它会首先验证是否已经包含了该文件、如果已经包含、则不再执行include_once、否则、则必须包含该文件、除了这一点与include完全相同
3、require()
require(filename)
require()在很大程度上与include相同、都是将一个模板文件包含到require调用坐在的位置
require和include之间有两点重要的区别、首先、无论require的位置如何、制定文件都将包含到出现require的脚本中、例如、即使require放在计算结果为假的if语句中、依然会包含指定文件
第二个重要的区别是:require出错时、脚本将停止运行、而在使用include的情况下、脚本将继续执行
4、require_once()
require_once(filename)
随着网站越来越大、可能会出现重复包含某些文件、这也许不是问题、但又是修改了所包含文件的变量后、却由于后面再次包含原来的文件而被覆盖、可能不希望出现这种情况、还可能出现另一个问题、即所包含文件中函数名的冲突、使用require_once就可以解决这些问题
require_once函数确保文件只包含一次、在遇到require_once后、后面再试图包含相同的文件时将被忽略
5、各种引入文件的方法比较
Function |
Time (s) | Memory (b) | ||
---|---|---|---|---|
|
32Kb File | 1Mb File | 32Kb File | 1Mb File |
file_get_contents | 0.00152 | 0.00564 | 52480 | 1067856 |
fpassthru | 0.00117 | 0.00184 | 20016 | 20032 |
fgets | 0.00195 | 0.07190 | 30760 | 30768 |
file | 0.00157 | 0.06464 | 87344 | 2185624 |
require_once | 0.00225 | 0.08065 | 67992 | 2067696 |
include | 0.00222 | 0.08202 | 67928 | 2067624 |
readfile | 0.00117 | 0.00191 | 19192 | 19208 |
通过上面的表格可以看出、file_get_contents方法的效率是最高的、所以大家在平时使用的还是多多注意一下、这下我也得改我的博客代码咯