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

怎么创建自己的类库

[复制链接]
发表于 2008-8-14 16:01:57 | 显示全部楼层 |阅读模式
Image.php
[php]
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
class Image {

    function Image($url)
    {
     echo "<hr/>";
     echo "<font color = 'red'>The url isurl"."</font>";
     echo "<hr/>";
    }
   
    function Rimage($url)
    {
     echo "Remove image to $url";
    }
}
[/php]
在library目录下写了这样一个示例。
然后这样用:
    $this->load->library('Image');  
    $this->Image->Rimage('../../');
搞不明白这错。。
报错:
A PHP Error was encounteredSeverity: Warning
Message: Missing argument 1 for Image::Image(), called in D:\webroot\x.cn\CodeIgniter_1.6.3\system\libraries\Loader.php on line 873 and defined
Filename: libraries/Image.php
Line Number: 7

A PHP Error was encounteredSeverity: Notice
Message: Undefined variable: url
Filename: libraries/Image.php
Line Number: 10

The url is:
A PHP Error was encounteredSeverity: Notice
Message: Undefined property: Welcome:Image
Filename: controllers/welcome.php
Line Number: 577

[ 本帖最后由 lxylxy888666 于 2008-8-14 16:03 编辑 ]
 楼主| 发表于 2008-8-14 16:28:58 | 显示全部楼层
弄明白了。。
发表于 2008-8-14 16:41:56 | 显示全部楼层
这都是什么东东??
 楼主| 发表于 2008-8-14 17:08:23 | 显示全部楼层
只是随便写的拿来测试。。。
我要写自己的类。
代码咋不高亮???
 楼主| 发表于 2008-8-14 17:08:58 | 显示全部楼层
原帖由 Hex 于 2008-8-14 16:41 发表
这都是什么东东??

你难道不明白?
发表于 2008-8-15 14:34:57 | 显示全部楼层
CI有个不足的地方是:当核心类不存在的情况下,创建自定义(扩展类)无效果。
所以要创建核心类,要在system/libraries下创建,类名遵从命名规范。即:CI_Image
参见:http://codeigniter.org.cn/user_guide/general/core_classes.html
扩展类的命名是MY_Image,前缀可在配置文件中修改。
 楼主| 发表于 2008-8-15 16:06:21 | 显示全部楼层
谢谢提醒,但是还是请认真阅读手册
我创建的是自己的类库,不是核心内库:)
发表于 2008-8-16 00:51:05 | 显示全部楼层
原帖由 旭日 于 2008-8-15 14:34 发表
CI有个不足的地方是:当核心类不存在的情况下,创建自定义(扩展类)无效果。
所以要创建核心类,要在system/libraries下创建,类名遵从命名规范。即:CI_Image
参见:http://codeigniter.org.cn/user_guide/general/core_classes.ht ...

核心类为什么不存在?直接在 app/lib 目录下做 MY_ 就可以了。
发表于 2008-8-19 10:50:22 | 显示全部楼层
原帖由 Hex 于 2008-8-16 00:51 发表

核心类为什么不存在?直接在 app/lib 目录下做 MY_ 就可以了。


之前说的是。比如:在/system/libraries/下,不存在class CI_Test,那在application/libraries下就不能创建MY_Test。

而今天再次看了一次控制器部份,发现可以在/application/libraries下创建CI_Test。
发表于 2008-8-19 10:52:18 | 显示全部楼层
原帖由 lxylxy888666 于 2008-8-15 16:06 发表
谢谢提醒,但是还是请认真阅读手册
我创建的是自己的类库,不是核心内库:)


你创建自己的内裤也要按命名规范来。

本版积分规则