Image uploader在php中使用基本的oops概念

时间:2012-04-25 05:59:36

标签: php oop

我正在尝试使用一些基本的oops概念为我的图像上传器,但似乎没有工作我的基本代码什么是错误请帮助我出这个

class allUploader
{
    var $name="sdf";
    var $type="";
    var $error="";
    function imageupload($image)
    {
        return $this->name;
    }
}
$v=allUploader::imageupload("hello");
echo $v;

错误:

Notice: Undefined index: uploader in /var/www/imageupload.php on line 20 Fatal error: Using $this when not in object context in /var/www/imageupload.php on line 15

感谢您宝贵的时间

1 个答案:

答案 0 :(得分:2)

您的问题是,您正试图在static上下文中根据您的调用代码引用此内容,因此您需要执行以下两项操作之一才能使其正常工作。

选项1:

// Wrong
$v=allUploader::imageupload("hello");

// Right
$uploader = new allUploader();
$uploader->imageupload('hello');

选项2:

// Wrong
var $name = 'sdf';

function imageupload($image)

// Right
protected static $name;

public static function imageupload($image)
{
    return self::$name;
}

选项3

// Wrong
function imageupload($image)

// Right
public static function imageupload($image)
{
    $uploader = new allUploader();

    return $uploader->name;
}

我建议你给PHP的'OOP The Basics'一个彻底的阅读,以及static keywords