参见英文答案 >
PHP include best practices question9个
我一直在互联网上试图找出处理我网站路径的最佳方法.我应该使用相对路径,绝对路径吗? @H_301_2@我已经看过dirname(FILE)提到了几次.我使用相对路径的一个问题是,由不同目录级别的其他几个文件包含的PHP文件会导致相对路径中断.例如,如果目录结构是
我一直在互联网上试图找出处理我网站路径的最佳方法.我应该使用相对路径,绝对路径吗? @H_301_2@我已经看过dirname(FILE)提到了几次.我使用相对路径的一个问题是,由不同目录级别的其他几个文件包含的PHP文件会导致相对路径中断.例如,如果目录结构是
Root A B b@H_301_2@而b和A中的PHP文件包含B中的另一个文件,则B中文件中的代码的相对路径将不同. @H_301_2@对不起,如果这很混乱,我很难打字我想说的话. @H_301_2@因此,一般来说,处理文件路径的最佳方法是在代码中包含和文件操作. @H_301_2@谢谢
Tho有很多方法可以找出我总是找到最简单的方法来定义一个文件中的一个常量在项目的根目录index.PHP或一个排序的配置.
那么我可以使用SITE_ROOT作为包含/类加载器等级,SITE_URL可以用于视图,控制器,重定向等.
原文链接:https://www.f2er.com/php/139448.html那么我可以使用SITE_ROOT作为包含/类加载器等级,SITE_URL可以用于视图,控制器,重定向等.
<?PHP $root=pathinfo($_SERVER['SCRIPT_FILENAME']); define ('BASE_FOLDER',basename($root['dirname'])); define ('SITE_ROOT',realpath(dirname(__FILE__))); define ('SITE_URL','http://'.$_SERVER['HTTP_HOST'].'/'.BASE_FOLDER); ?>@H_301_2@Basic class Autoloader
<?PHP function __autoload($class_name) { include (SITE_ROOT.'/includes/'.$class_name.'.PHP'); } $obj = new MyClass1(); $obj2 = new MyClass2(); ?>