Passed
Pull Request — master (#29)
by
unknown
01:56
created

Student::__construct()   A

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
cc 1
eloc 1
c 1
b 0
f 0
nc 1
nop 0
dl 0
loc 3
rs 10
1
<?php
2
3
namespace Example\Models;
4
5
use CoffeeCode\DataLayer\DataLayer;
6
7
class Student extends DataLayer
8
{
9
    /**
10
     * Student constructor.
11
     */
12
    public function __construct()
13
    {
14
        parent::__construct("students", ["name", "birthdate"], "id", false);
15
    }
16
17
    /**
18
     * @return array|null
19
     */
20
    public function doneCourses(): ?array
21
    {
22
        $courses = new Course();
23
        $studentCourse = new StudentCourse();
24
25
        return $this
26
            ->select("*, students.name as student_name")
27
            ->join(
28
                $studentCourse,
29
                "students.id", "=", "student_course.idstudent"
30
            )
31
            ->join(
32
                $courses,   
33
                "courses.id", "=", "student_course.idcourse"
34
            )
35
            ->where(
36
                "student_course.idstudent = :id",
37
                "id={$this->id}"
0 ignored issues
show
Bug Best Practice introduced by
The property id does not exist on Example\Models\Student. Since you implemented __get, consider adding a @property annotation.
Loading history...
38
            )
39
            ->fetch(true);
40
    }
41
}