@@ -14,6 +14,16 @@ class sslLabsApi
14
14
{
15
15
CONST API_URL = "https://api.ssllabs.com/api/v2 " ;
16
16
17
+ private $ returnJsonObjects ;
18
+
19
+ /**
20
+ * sslLabsApi::__construct()
21
+ */
22
+ public function __construct ($ returnJsonObjects = false )
23
+ {
24
+ $ this ->returnJsonObjects = (boolean ) $ returnJsonObjects ;
25
+ }
26
+
17
27
/**
18
28
* sslLabsApi::fetchApiInfo()
19
29
*
@@ -135,7 +145,39 @@ public function sendApiRequest($apiCall, $parameters = array())
135
145
)
136
146
);
137
147
138
- return (file_get_contents (self ::API_URL . '/ ' . $ apiCall . $ this ->buildGetParameterString ($ parameters ), false , $ context ));
148
+ $ apiResponse = file_get_contents (self ::API_URL . '/ ' . $ apiCall . $ this ->buildGetParameterString ($ parameters ), false , $ context );
149
+
150
+ if ($ this ->returnJsonObjects )
151
+ {
152
+ return (json_decode ($ apiResponse ));
153
+ }
154
+
155
+ return ($ apiResponse );
156
+ }
157
+
158
+ /**
159
+ * sslLabsApi::setReturnJsonObjects()
160
+ *
161
+ * Setter for returnJsonObjects
162
+ * Set true to return all API responses as JSON object, false returns it as simple JSON strings (default)
163
+ *
164
+ * @param boolean $returnJsonObjects
165
+ */
166
+ public function setReturnJsonObjects ($ returnJsonObjects )
167
+ {
168
+ $ this ->returnJsonObjects = (boolean ) $ returnJsonObjects ;
169
+ }
170
+
171
+ /**
172
+ * sslLabsApi::getReturnJsonObjects()
173
+ *
174
+ * Getter for returnJsonObjects
175
+ *
176
+ * @return boolean true returns all API responses as JSON object, false returns it as simple JSON string
177
+ */
178
+ public function getReturnJsonObjects ()
179
+ {
180
+ return ($ this ->returnJsonObjects );
139
181
}
140
182
141
183
/**
0 commit comments