2011-06-25 29 views
1

我遇到使用此方法包括通过使用此代码一次include_once许多文件。它会导致任何问题?

foreach(glob("class/*.php") as $file) 
    { 
     include_once "$file"; 
    } 

它的实际工作所有的类文件的应用程序,但不知道这种方法包括所有文件一次以后会引起什么问题?此方法是否建议一次包含多个文件?

谢谢

+0

也许使用require一次会是一个更好的选择 – Ibu

回答

4

我认为autoloading会更好。

从文档中检查出在这里http://php.net/manual/en/language.oop5.autoload.php

一个简单的例子可以进行调整,以适应你的情况

<?php 
function __autoload($class_name) { 
    include 'class/'. $class_name . '.php'; 
} 

$obj = new MyClass1(); 
$obj2 = new MyClass2(); 
?> 
0

这将创造出很多不必要的开销,如果任何一个类都没有使用。每个文件都必须进行解析,这将不必要地花费时间。我同意@梁良良100%,你应该使用__autoload。至于@lbu和您的原始解决方案的建议,建议不要使用版本,它们比仅使用includerequire更昂贵。

相关问题