我正在尝试使用一些基本的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
感谢您宝贵的时间
答案 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。