MxInfo::toArray()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 9

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 6

Importance

Changes 0
Metric Value
dl 0
loc 9
ccs 0
cts 8
cp 0
rs 9.9666
c 0
b 0
f 0
cc 2
nc 2
nop 0
crap 6
1
<?php
2
3
namespace eXpansion\Bundle\Maps\Structure;
4
5
class MxInfo
6
{
7
    /** @var integer */
8
    public $trackID;
9
    /** @var integer */
10
    public $userID;
11
    /** @var string */
12
    public $username;
13
    /** @var string */
14
    public $uploadedAt;
15
    /** @var string */
16
    public $updatedAt;
17
    /** @var string */
18
    public $name;
19
    /** @var string */
20
    public $typeName;
21
    /** @var string */
22
    public $mapType;
23
    /** @var  string */
24
    public $titlePack;
25
    /** @var string */
26
    public $styleName;
27
    /** @var string */
28
    public $mood;
29
    /** @var integer */
30
    public $displayCost;
31
    /** @var string */
32
    public $modName;
33
    /** @var integer */
34
    public $lightmap;
35
    /** @var string */
36
    public $exeVersion;
37
    /** @var string */
38
    public $exeBuild;
39
    /** @var string */
40
    public $environmentName;
41
    /** @var string */
42
    public $vehicleName;
43
    /** @var string */
44
    public $routeName;
45
    /** @var string */
46
    public $lengthName;
47
    /** @var integer */
48
    public $laps;
49
    /** @var string */
50
    public $difficultyName;
51
    /** @var string */
52
    public $replayTypeName;
53
    /** @var integer */
54
    public $replayWRID;
55
    /** @var integer */
56
    public $replayCount;
57
    /** @var integer */
58
    public $trackValue;
59
    /** @var string */
60
    public $comments;
61
    /** @var integer */
62
    public $awardCount;
63
    /** @var integer */
64
    public $commentCount;
65
    /** @var integer */
66
    public $replayWRTime;
67
    /** @var integer */
68
    public $replayWRUserID;
69
    /** @var string */
70
    public $replayWRUsername;
71
    /** @var boolean */
72
    public $unlimiterRequired;
73
    /** @var string */
74
    public $trackUID;
75
    /** @var boolean */
76
    public $unreleased;
77
    /** @var string */
78
    public $gbxMapName;
79
    /** @var integer */
80
    public $ratingVoteCount;
81
    /** @var integer */
82
    public $ratingVoteAverage;
83
    /** @var boolean */
84
    public $hasScreenshot;
85
    /** @var boolean */
86
    public $hasThumbnail;
87
    /** @var boolean */
88
    public $hasGhostBlocks;
89
    /** @var integer */
90
    public $embeddedObjectsCount;
91
92
93
    public function __construct($mxinfo)
94
    {
95
        if ($mxinfo !== null) {
96
            foreach ($mxinfo as $key => $value) {
97
                $this->{lcfirst($key)} = $value;
98
            }
99
        }
100
    }
101
102
    /**
103
     * @return array
104
     */
105
    public function toArray()
106
    {
107
        $arr = [];
108
        foreach ($this as $key => $value) {
0 ignored issues
show
Bug introduced by
The expression $this of type this<eXpansion\Bundle\Maps\Structure\MxInfo> is not traversable.
Loading history...
109
            $arr[$key] = $value;
110
        }
111
112
        return $arr;
113
    }
114
115
}
116