技术文摘

php编写一点建议,多使用DIRECTORYSEPARATOR

作者:雨祺   发表于:
浏览:30次    字数:608  原创
级别: 站长   总稿: 69 篇,  月稿: 0
php编写一点建议,多使用DIRECTORYSEPARATOR
举例(ListInfo.php文件为例):
起头文件我现在改为这个
  1. require dirname(__DIR__) . DIRECTORY_SEPARATOR . 'class' . DIRECTORY_SEPARATOR . 'connect.php'
  2. require ECMS_PATH . 'e' . DIRECTORY_SEPARATOR . 'class' . DIRECTORY_SEPARATOR . 'functions.php'
  3. require ECMS_PATH . 'e' . DIRECTORY_SEPARATOR . 'class' . DIRECTORY_SEPARATOR . 't_functions.php'
  4. require ECMS_PATH . 'e' . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . 'dbcache' . DIRECTORY_SEPARATOR . 'class.php'
  5. require LoadLang('pub' . DIRECTORY_SEPARATOR . 'fun.php'); 
原版
  1. require('../class/connect.php'); 
  2. require('../class/db_sql.php'); //如果7.5版本,你会发这个文件是空的,可以删除 
  3. require('../class/functions.php'); 
  4. require('../class/t_functions.php'); 
  5. require('../data/dbcache/class.php'); 
  6. require LoadLang('pub/fun.php'); 
这两个写法都不影响使用,为什么我还要用第一种的(composer项目基本使用绝对地址)
第一种:
1. 使用绝对路径
2. DIRECTORY_SEPARATOR 代码斜杆,在win系统和Linux 这个斜杆是不一样的 '/'或 '' 如果使用DIRECTORY_SEPARATOR自动转换

第二种:
相对路径,帝国有时会这样路径
有时这样 '/e/' . '../class/connect.php';
有时这样 '/e/' . '/class/connect.php';
有时还这样 '/../../' . '../class/connect.php';
这时在 require include 执行效率是不一样的,有时像还会出现加载不了(特指用户自己写的代码,开发环境win,生产环境是linux, 就会有这样问题)

所有开发时麻烦一点,上线时少一点麻烦。

【审核人:站长】

收藏   加好友   生成海报   分享
点赞(0)
打赏
Tags: 帝国CMS 帝国

发布者资料

热门文章

技术文摘

查看更多技术文摘
首页
栏目
搜索
会员
投稿