Completed
Push — master ( 142578...5f4f14 )
by Igor
06:03
created

Upload::makeUploadedFile()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 14
Code Lines 10

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 10
CRAP Score 1

Importance

Changes 1
Bugs 0 Features 0
Metric Value
dl 0
loc 14
ccs 10
cts 10
cp 1
rs 9.4285
c 1
b 0
f 0
cc 1
eloc 10
nc 1
nop 1
crap 1
1
<?php
2
3
namespace app\helpers;
4
5
use yii\helpers\FileHelper;
6
use yii\web\UploadedFile;
7
8
class Upload
9
{
10
    /**
11
     * Create manually UploadedFile instance by file path
12
     *
13
     * @param string $path file path
14
     * @return UploadedFile
15
     */
16 7
    public static function makeUploadedFile($path)
17
    {
18 7
        $tmpFile = tempnam(sys_get_temp_dir(), 'app');
19 7
        file_put_contents($tmpFile, file_get_contents($path));
20
21 7
        $uploadedFile = new UploadedFile();
22 7
        $uploadedFile->name = pathinfo($path, PATHINFO_BASENAME);
23 7
        $uploadedFile->tempName = $tmpFile;
24 7
        $uploadedFile->type = FileHelper::getMimeType($tmpFile);
25 7
        $uploadedFile->size = filesize($tmpFile);
26 7
        $uploadedFile->error = 0;
27
28 7
        return $uploadedFile;
29
    }
30
}
31