用户
 找回密码
 入住 CI 中国社区
搜索
查看: 2510|回复: 2
收起左侧

[讨论/交流] win空间换成linux空间 竟然会变引入文件的大小写

[复制链接]
发表于 2014-10-17 20:25:25 | 显示全部楼层 |阅读模式
本帖最后由 沦陷今生 于 2014-10-17 20:27 编辑

$config['subclass_prefix'] = 'MY_';//大写的 对吧
有以下文件


/application/core/MY_Controller.php//这个会自动加载 并且加载成功 大写的 对吧
/application/helpers/MY_md5_helper.php //这个需要写入代码调用,前缀也是大写的 对吧

MY_Controller.php里
PHP复制代码
class M_Controller extends CI_Controller
{
        function __construct()
        {
                parent::__construct();
                $this->load->helper('url');
                $this->load->helper('MY_md5_helper');//这里会报错 Unable to load the requested file: helpers/my_md5_helper.php
 
复制代码




然后我就回头去检查$config['subclass_prefix']
没错啊 确实是大写的MY_
文件也存在 哪错了呢?这套程序直接无错搬过来用的

弄了半天 把/application/helpers/MY_md5_helper.php复制一份改名
/application/helpers/my_md5_helper.php就没提示了
不懂是哪里不受控制 把代码里写写的$this->load->helper('MY_md5_helper');
给我改成实际效果是$this->load->helper('my_md5_helper');
设置好的MY_改成了小写
难道是win换了linux的问题吗?


发表于 2014-10-18 16:43:47 | 显示全部楼层
win下文件名不区分大小写,而在linux上是区分的
发表于 2014-10-19 14:45:55 | 显示全部楼层
你这种调用方法不对  
直接$this->load(md5);

CI自己会组装文件名添加前缀跟'_heper'

在组装文件名前会调用个准备函数,有一步是将传入内容小写

你可以看看源码 system/core/load.php  function helper()函数

本版积分规则