Completed
Push — master ( 59dd65...1b89b4 )
by Christofer
02:20
created

Curl   A

Complexity

Total Complexity 6

Size/Duplication

Total Lines 42
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
eloc 26
dl 0
loc 42
ccs 26
cts 26
cp 1
rs 10
c 0
b 0
f 0
wmc 6

2 Methods

Rating   Name   Duplication   Size   Complexity  
A cUrl() 0 7 1
A cUrlMulti() 0 30 5
1
<?php
2
3
namespace Chai17\Models;
4
5
class Curl
6
{
7
8 3
    public function cUrl($url)
9
    {
10 3
        $result = curl_init($url);
11 3
        curl_setopt($result, CURLOPT_RETURNTRANSFER, true);
12 3
        $json = curl_exec($result);
13 3
        curl_close($result);
14 3
        return $json;
15
    }
16
17 1
    public function cUrlMulti(array $url)
18
    {
19 1
        $chandle= [];
20 1
        $mhandle = curl_multi_init();
21 1
        $count = count($url);
22 1
        for ($i=0; $i < $count; $i++) {
23 1
            array_push($chandle, curl_init($url[$i]));
24 1
            curl_setopt($chandle[$i], CURLOPT_RETURNTRANSFER, true);
25 1
            curl_multi_add_handle($mhandle, $chandle[$i]);
26
        }
27
28 1
        $running = null;
29
        do {
30 1
            curl_multi_exec($mhandle, $running);
31 1
        } while ($running);
32
33
        //close the handles
34 1
        $count = count($chandle);
35 1
        for ($i=0; $i < $count; $i++) {
36 1
            curl_multi_remove_handle($mhandle, $chandle[$i]);
37
        }
38
39 1
        curl_multi_close($mhandle);
40
41 1
        $json = [];
42 1
        $count = count($chandle);
43 1
        for ($i=0; $i < $count; $i++) {
44 1
            array_push($json, curl_multi_getcontent($chandle[$i]));
45
        }
46 1
        return $json;
47
    }
48
}
49