File tree 1 file changed +27
-0
lines changed
1 file changed +27
-0
lines changed Original file line number Diff line number Diff line change @@ -307,6 +307,33 @@ public function setQueryParameters($queryParameters)
307
307
return $ this ;
308
308
}
309
309
310
+ /**
311
+ * @param mixed[] $queryParameters
312
+ * @return $this
313
+ */
314
+ public function setQueryParametersFromArray (array $ queryParameters )
315
+ {
316
+ if (is_null ($ queryParameters )) {
317
+ $ this ->clearQueryParameters ();
318
+ return $ this ;
319
+ }
320
+ if (!is_array ($ queryParameters )) {
321
+ $ argumentType = (is_object ($ queryParameters )) ? get_class ($ queryParameters ) : gettype ($ queryParameters );
322
+ throw new \InvalidArgumentException ('Expected query parameters as array; got ' . $ argumentType );
323
+ }
324
+ foreach ($ queryParameters as $ queryParameter ) {
325
+ if (!is_scalar ($ queryParameter )) {
326
+ $ argumentType = (is_object ($ queryParameter )) ? get_class ($ queryParameter ) : gettype ($ queryParameter );
327
+ throw new \InvalidArgumentException ('Expected query parameter values as scalar; found ' . $ argumentType );
328
+ }
329
+ }
330
+ $ this ->clearQueryParameters ();
331
+ foreach ($ queryParameters as $ queryParameterKey => $ queryParameterValue ) {
332
+ $ this ->queryParameters [] = new QueryParameter ($ queryParameterKey , $ queryParameterValue );
333
+ }
334
+ return $ this ;
335
+ }
336
+
310
337
/**
311
338
* @param QueryParameterInterface $queryParameter
312
339
* @return $this
You can’t perform that action at this time.
0 commit comments