-
-
Notifications
You must be signed in to change notification settings - Fork 592
Expand file tree
/
Copy pathSearch.php
More file actions
121 lines (111 loc) · 3.57 KB
/
Search.php
File metadata and controls
121 lines (111 loc) · 3.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
<?php
namespace Github\Api;
/**
* Implement the Search API.
*
* @link https://developer.github.com/v3/search/
*
* @author Greg Payne <greg.payne@gmail.com>
*/
class Search extends AbstractApi
{
use AcceptHeaderTrait;
/**
* Search repositories by filter (q).
*
* @link https://developer.github.com/v3/search/#search-repositories
*
* @param string $q the filter
* @param string $sort the sort field
* @param string $order asc/desc
* @param array $params
*
* @return array list of repositories found
*/
public function repositories($q, $sort = 'updated', $order = 'desc', array $params = [])
{
return $this->get('/search/repositories', array_merge(['q' => $q, 'sort' => $sort, 'order' => $order], $params));
}
/**
* Search issues by filter (q).
*
* @link https://developer.github.com/v3/search/#search-issues
*
* @param string $q the filter
* @param string $sort the sort field
* @param string $order asc/desc
* @param array $params
*
* @return array list of issues found
*/
public function issues($q, $sort = 'updated', $order = 'desc', array $params = [])
{
return $this->get('/search/issues', array_merge(['q' => $q, 'sort' => $sort, 'order' => $order], $params));
}
/**
* Search code by filter (q).
*
* @link https://developer.github.com/v3/search/#search-code
*
* @param string $q the filter
* @param string $sort the sort field
* @param string $order asc/desc
* @param array $params
*
* @return array list of code found
*/
public function code($q, $sort = 'updated', $order = 'desc', array $params = [])
{
return $this->get('/search/code', array_merge(['q' => $q, 'sort' => $sort, 'order' => $order], $params));
}
/**
* Search users by filter (q).
*
* @link https://developer.github.com/v3/search/#search-users
*
* @param string $q the filter
* @param string $sort the sort field
* @param string $order asc/desc
* @param array $params
*
* @return array list of users found
*/
public function users($q, $sort = 'updated', $order = 'desc', array $params = [])
{
return $this->get('/search/users', array_merge(['q' => $q, 'sort' => $sort, 'order' => $order], $params));
}
/**
* Search commits by filter (q).
*
* @link https://developer.github.com/v3/search/#search-commits
*
* @param string $q the filter
* @param string $sort the sort field
* @param string $order sort order. asc/desc
* @param array $params
*
* @return array
*/
public function commits($q, $sort = null, $order = 'desc', array $params = [])
{
// This api is in preview mode, so set the correct accept-header
$this->acceptHeaderValue = 'application/vnd.github.cloak-preview';
return $this->get('/search/commits', array_merge(['q' => $q, 'sort' => $sort, 'order' => $order], $params));
}
/**
* Search topics by filter (q).
*
* @link https://developer.github.com/v3/search/#search-topics
*
* @param string $q the filter
* @param array $params
*
* @return array
*/
public function topics($q, array $params = [])
{
// This api is in preview mode, so set the correct accept-header
$this->acceptHeaderValue = 'application/vnd.github.mercy-preview+json';
return $this->get('/search/topics', array_merge(['q' => $q], $params));
}
}