上传包装类

时间:2011-04-06 11:53:04

标签: php

我有很多种类的对象:类别,制造商,物品,文章等。每个对象都有文件上传:图像,PDF格式的手册等。上载的文件可以是公共的和受保护的(仅供注册用户查看/下载) )。

我想将整个上传例程包装成一个(或多个)类。

目前我在index.php(PATH_UPLOAD_PUBLICPATH_UPLOAD_PROTECTED)有2个已定义的常量。这是我存储公共文件和受保护文件的前锋的绝对路径。公共路径可从Web获得,受保护的路径不可从Web获取(它位于虚拟主机文档根目录下)。

目前,每个控制器处理上传的方法都包含一段包含move_uploaded_file()的代码。

请帮助让它变得更加美丽,并将此代码分类到课堂中。

谢谢。

PS:对不起我的英文。

1 个答案:

答案 0 :(得分:1)

如果您正在寻找如何创建处理上传的课程的示例,请转到http://www.phpclasses.org并搜索文件上传课程。

如果你想玩,并创建自己的。我建议开始简单。创建一个构造,然后一个基本上使用一个参数public或private的方法,具体取决于你想要移动文件的位置。在这个方法中,你可以使用move_upload_file逻辑)。

所以你最终得到这样的东西:

$fileupload - new MyFileUploadClass(); //you class would have to have _-construct obvioulsy
$fileupload->uploadfile(true); // you uploadfile would have one parameter being true or false and then

你的方法看起来像这样

function uploadfile($private=false){
 $path = PATH_UPLOAD_PUBLIC;
 if($private)
    $path = PATH_UPLOAD_PRIVATE;
  move_upload_file($_FILE[name], $path);
 }