lxylxy888666 发表于 2008-8-14 16:01:57

怎么创建自己的类库

Image.php

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
class Image {

    function Image($url)
    {
   echo "<hr/>";
   echo "<font color = 'red'>The url is:$url"."</font>";
   echo "<hr/>";
    }
   
    function Rimage($url)
    {
   echo "Remove image to $url";
    }
}

在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 编辑 ]

lxylxy888666 发表于 2008-8-14 16:28:58

弄明白了。。
:lol

Hex 发表于 2008-8-14 16:41:56

:L 这都是什么东东??

lxylxy888666 发表于 2008-8-14 17:08:23

只是随便写的拿来测试。。。
我要写自己的类。
代码咋不高亮???

lxylxy888666 发表于 2008-8-14 17:08:58

原帖由 Hex 于 2008-8-14 16:41 发表 http://codeigniter.org.cn/forums/images/common/back.gif
:L 这都是什么东东??
你难道不明白?

旭日 发表于 2008-8-15 14:34:57

CI有个不足的地方是:当核心类不存在的情况下,创建自定义(扩展类)无效果。
所以要创建核心类,要在system/libraries下创建,类名遵从命名规范。即:CI_Image
参见:http://codeigniter.org.cn/user_guide/general/core_classes.html
扩展类的命名是MY_Image,前缀可在配置文件中修改。

lxylxy888666 发表于 2008-8-15 16:06:21

谢谢提醒,但是还是请认真阅读手册:lol
我创建的是自己的类库,不是核心内库:)

Hex 发表于 2008-8-16 00:51:05

原帖由 旭日 于 2008-8-15 14:34 发表 http://codeigniter.org.cn/forums/images/common/back.gif
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 发表 http://codeigniter.org.cn/forums/images/common/back.gif

核心类为什么不存在?直接在 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 发表 http://codeigniter.org.cn/forums/images/common/back.gif
谢谢提醒,但是还是请认真阅读手册:lol
我创建的是自己的类库,不是核心内库:)

你创建自己的内裤也要按命名规范来。
页: [1] 2
查看完整版本: 怎么创建自己的类库