1
+ <?php
2
+ abstract class BaseCurl
3
+ {
4
+ public static function curlSkeletonIfDataSend ($ curlObj , $ OpType , $ data )
5
+ {
6
+ curl_setopt ($ curlObj , CURLOPT_CUSTOMREQUEST , $ OpType );
7
+ curl_setopt ($ curlObj , CURLOPT_POSTFIELDS , $ data );
8
+ curl_setopt ($ curlObj , CURLOPT_RETURNTRANSFER , true );
9
+ curl_setopt ($ curlObj , CURLOPT_HTTPHEADER , array (
10
+ 'Content-Type: application/json ' ,
11
+ 'Content-Length: ' . strlen ($ data ))
12
+ // Set an authorization header if needed
13
+ // 'Authorization: Bearer YourAccessToken',
14
+ );
15
+ $ response = curl_exec ($ curlObj );
16
+ // Get the HTTP response code
17
+ $ httpCode = curl_getinfo ($ curlObj , CURLINFO_HTTP_CODE );
18
+
19
+ // Check for cURL errors and handle response code
20
+ if (curl_errno ($ curlObj ))
21
+ {
22
+ return ["error " =>true , "errorType " => "Curl Error " , "data " =>curl_error ($ curlObj )];
23
+ }
24
+ elseif ($ httpCode >= 400 )
25
+ {
26
+ return ["error " => true , "errorType " => "HTTP Error " , "data " => $ httpCode ];
27
+ } else
28
+ {
29
+ return ["data " => $ response ];
30
+ }
31
+ }
32
+
33
+ public static function closeCurl ($ curlObj )
34
+ {
35
+ curl_close ($ curlObj );
36
+ }
37
+ }
0 commit comments