OutputArchive::__construct()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 1
c 1
b 0
f 0
dl 0
loc 3
rs 10
cc 1
nc 1
nop 1
1
<?php
2
3
namespace SchemaGenerate\StructureGenerate\Outputs;
4
5
use ZipArchive;
6
7
class OutputArchive extends OutputAbstract
8
{
9
    /** @var Output */
10
    private $output;
11
12
    public function __construct(Output $output)
13
    {
14
        $this->output = $output;
15
    }
16
17
    public function process(): array
18
    {
19
        $result = $this->output->process();
20
21
        $zip = new ZipArchive();
22
        $filePath = '/tmp/' . time() . '.zip';
23
        $zip->open($filePath, ZipArchive::CREATE);
24
25
        foreach ($result as $file) {
26
            $zip->addFile($file);
27
        }
28
        $zip->close();
29
30
        return [
31
            $filePath
32
        ];
33
    }
34
}