引导PHP应用程序是一种很好的做法.
我发现了两种引导PHP应用程序的方法.需要一些更好的方法.
第一.
为文件夹结构定义常量
$controllerPath = 'controller';
define('CONTROLLER', str_replace('\\', '/', realpath($controllerPath)).'/');
//usage
require_once CONTROLLER . 'somecontroller.php';
第二
使用ini_set设置应用程序根目录的包含路径
$rootPath = $_SERVER['DOCUMENT_ROOT'];
$includePath = ini_get('include_path');
ini_set('include_path', '.'.PATH_SEPARATOR.$rootPath.PATH_SEPARATOR.$includePath);
//usage
require_once 'controller/somecontroller.php';
请告诉我哪种方式更好.
在高负荷应用的情况下,这将是最好的方法??
解决方法:
使用ini_set将其设置为您的应用程序的目录.这就是为什么你可以在require语句中使用文字字符串.此外,它使重用代码更容易使用
require 'coolapp/class/Model.php'
require 'coolapp/display/Router.php'
require 'spinoff/display/JsView.php'
// etc
它类似于java中具有完全限定的com.whatever.app.more导入的想法,或者在python中所有应用程序导入的内容应该是相对于该应用程序的绝对值.
回复:高负荷应用
除非您要加载数千个文件,否则包含文件所需的时间可能不是瓶颈.但是,如果是这种情况,你有几个选择.一个是APC,它将include的结果缓存在内存中.另一种方法是从单个文件加载所有内容,类似于将javascript文件连接成一个文件以获得更好的性能(巧合的是,APC具有为您提供此信息的功能). APC设置非常简单,完全透明,增加了~50% better performance.