douhan5547 2014-01-02 02:16
浏览 10
已采纳

使用常量来包含文件

I got something like this, but it doesn't work, seems like it's not working because of the servername is shown.

DEFINE("APP_FOLDER", "website");
DEFINE("MODULES_DIR", $_SERVER["SERVER_NAME"].APP_FOLDER."/modules");

include_once(MODULES_DIR."/class-ViewRender.php");

It shows an error: *Warning: include_once(localhost/website/modules/class-ViewRender.php): failed to open stream.*

What I also want is that I can have a file like this

myappfolder/pages/users.php -> the file class-ViewRender.php should be successfully included

myappfolder/pages/administration/administrativeusers.php -> Here the file class-ViewRender.php should be successfully included as well.

How can I achieve this including the same config.php in every php file?

  • 写回答

2条回答 默认 最新

  • doukeyong3746487 2014-01-02 03:46
    关注

    This is a one major problem beginners face in PHP, I was affected alot. Best way to over come the issue is to using the 'File system_path'

    for eg.

    $white_list = array('127.0.0.1', '127.0.0.0','::1');
    
    defined('DS')? null:define('DS', DIRECTORY_SEPARATOR);
    
    if(!in_array($_SERVER['REMOTE_ADDR'], $white_list)){
        // Remote SERVER
        define('SITE_ROOT',       DS.'home'.DS.'some_name'.DS.'public_html'.DS.'your_web_root_folder_name');
    }
    else{
        //localhost
        define('SITE_ROOT', 'c:'.DS.'wamp'.DS.'www'.DS.'your_web_root_folder_name');
    }
    

    Then you can simply use SERVER_ROOT constant it in your PHP files.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 matlab中使用gurobi时报错
  • ¥15 WPF 大屏看板表格背景图片设置
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂