jiekexuan 发表于 2014-4-13 14:18:36

一个CI十年高手给我的困惑,谁帮我解释一下??

这个高手是这么做的,他讲CSS和JS还有图片放在VIEWS下,并且用相对路径的方式引用。它首先在config文件夹下的constants.php里面定义了这也一串代码.
define('_URL_',         '/');
define('_VIEWS_',       _URL_.'views/');
define('_CSS_',         _VIEWS_.'css/');
define('_LIBS_',      _VIEWS_.'libs/');
define('_JS_',          _VIEWS_.'js/');
define('_IMAGES_',      _VIEWS_.'images/');
define('_UPLOAD_',      _VIEWS_.'upload/');
然后再静态页面里是这样引用CSS 和JS的,例如<?=_CSS_?>common.css重点是这么写并没有正确引入CSS和JS还有图片,其次这么写明显违反了框架的单一入口文件保证安全的初衷。但是我又实在不敢质疑一位号称十年CI大神的想法。困惑中....
希望大神解释。

燃雲 发表于 2014-4-16 12:31:55

如此执行,看不出高手之处,仅一种便捷方法。

这样做可能是基于便捷性的考虑,比如很多cms系统增加主题,一次性只增加一个大文件夹即可,但是从开发角度来讲,会暴露不必要的信息,而且不便于将来静态文件的单独管理和迁移。我个人不赞成这么使用,一家之言,仅供参考。


有道理,但不同意属“开发角度”,应属“保安角度”。“静态文件的单独管理和迁移”属日常运作及维护范筹,是有点儿麻烦。

其实,若容许apache rewrite,可以使用rewrite来指向及隐藏具体目录地点,不须使用define。


CI是2006年2月8日首次公开发布的,“CI十年高手”?我也相当疑惑!

yuvista 发表于 2014-4-16 10:51:59

这样做可能是基于便捷性的考虑,比如很多cms系统增加主题,一次性只增加一个大文件夹即可,但是从开发角度来讲,会暴露不必要的信息,而且不便于将来静态文件的单独管理和迁移。我个人不赞成这么使用,一家之言,仅供参考。

燃雲 发表于 2014-5-7 18:33:11

明明写着“一个CI十年高手给我的困惑,谁帮我解释一下??”,忽然变成了“十年高手就是 PHP十年不是CI十年啦”

其实,“PHP十年”是否便是高手了?

十年前的技巧,当年也许有点巧妙,今天看来,仍会是巧妙么?

jiekexuan 发表于 2014-4-13 14:19:30

顺便说一声我和这位大神之是神交,没见面过也没说过话。不要让我去问他 我压根不知道他是谁。

neovenpo 发表于 2014-4-14 00:58:43

目测这样是可以正确引入CSS、Img、JS等静态文件的

jiekexuan 发表于 2014-4-14 08:00:00

neovenpo 发表于 2014-4-14 00:58
目测这样是可以正确引入CSS、Img、JS等静态文件的

是可以的吗 我怎么引得不成功啊

ginnerpeace 发表于 2014-4-14 10:49:17

_CSS_,你这几个下划线?

smilecc123 发表于 2014-4-14 17:59:04

可以使可以,前提条件是你得在.htaccess这个文件里面配置你的图片和样式表文件夹可以访问,默认是deny的:lol

jiekexuan 发表于 2014-4-14 20:47:54

smilecc123 发表于 2014-4-14 17:59
可以使可以,前提条件是你得在.htaccess这个文件里面配置你的图片和样式表文件夹可以访问,默认是deny的 ...

谢谢了我一猜就是 这个文件没有设置

jiekexuan 发表于 2014-4-14 20:48:19

ginnerpeace 发表于 2014-4-14 10:49
_CSS_,你这几个下划线?

一个下划线 不是两个 这个是用defind定义的

goyuquan 发表于 2014-4-16 11:02:42

把路径定义成常量,掉用,他这个,我觉得把简单的事情复杂化了
页: [1] 2
查看完整版本: 一个CI十年高手给我的困惑,谁帮我解释一下??