Я создаю класс загрузки, и я хотел бы знать, правильно ли это. Например
private $fieldname; //setting name in form
private $type = array(); //type files: text/plain','application/msword','application/pdf
private $folder; //folder where save my files
private $filename; //filename :)
public function __construct($fieldname,$type,$folder,$filename){
$this->fieldname = $fieldname;
$this->type[] = $type;
$this->folder = $folder;
$this->filename = $filename;
}
Когда я экземпляр объекта
$upload = new UploadClass('file',['pdf','photo'],'folder','filename');
Результат не радует меня
object(UploadClass)[1]
private 'fieldname' => string 'file' (length=4)
private 'type' =>
array (size=1)
0 =>
array (size=2)
0 => string 'pdf' (length=3)
1 => string 'photo' (length=5)
private 'folder' => string 'folder' (length=6)
private 'filename' => string 'filename' (length=8)
Я думаю, что проблема с двумя массивами не крутая.. Не знаю.. Может быть, вы помогаете мне, это становится лучше.. Извините за код! HAHA
Поскольку UploadClass::type
объявляется как массив, и вы добавляете к нему элемент с помощью $this->type[] = $type;
вы видите этот результат (т.е. вложенный массив). В основном вы добавляете этот массив к первому элементу типа UploadClass::type
.
Просто присвойте этот массив UploadClass::type
и вы все настроены:
$this->type = $type;
$this->type = $type;
..!?