Только начал изучать ООП на php. Появилась необходимость создать класс для работы с файлами и архивами. Собственно вопрос: как мне правильно создать экземпляр класса ZipArchive в моем классе, если он будет использоваться во многих методах моего класса? В голову пришли варианты:
1) Не понятно как потом к нему обращаться
class fileCreator {
private $zipname;
private $zip;
public function __construct($zipname) {
$this->zipname=$zipname;
$this->zip= new ZipArchive();
}
}
2) Не работает, но возможно есть похожий вариант.
class fileCreator {
private $zipname;
private $zip=new ZipArchive();
public function __construct($zipname) {
$this->zipname=$zipname;
}
}
3) Не создавать экземпляр ZipArchive в свойстве моего класса, а создавать его каждый раз в методе класса
class fileCreator {
private $zipname;
public function __construct($zipname) {
$this->zipname=$zipname;
}
public function func() {
$zip=new ZipArchive();
}
public function func2() {
$zip=new ZipArchive();
}
}
Первый вариант корректен.
class fileCreator {
private $zipname;
private $zip;
public function __construct($zipname) {
$this->zipname=$zipname;
$this->zip= new ZipArchive();
}
}
Непонятно как потом к нему обращаться
Из других методов? Точно так же, через $this->zip
.
class fileCreator {
private $zipname;
private $zip;
public function __construct($zipname, ZipArchive $obj) {
$this->zipname=$zipname;
$this->zip= $obj;
}
}
$zip=new ZipArchive();
$a=new fileCreator ($name,$zip);
способов много
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Всем приветКто-нибудь знает хорошую готовую регистрацию для сайта на php и mysql, чтобы только заменить название БД, имени и пароля, а то не хочу...