PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.9.0
GiveWP – Donation Plugin and Fundraising Platform v3.9.0
4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / Tracking / TrackingData / ServerData.php
give / src / Tracking / TrackingData Last commit date
ActiveDonationFormsData.php 4 years ago DonationData.php 4 years ago DonationFormsData.php 2 years ago DonationMetricsData.php 4 years ago EditedDonationFormsData.php 4 years ago GivePluginSettingsData.php 4 years ago PluginsData.php 4 years ago ServerData.php 4 years ago ThemeData.php 4 years ago WebsiteData.php 4 years ago WebsiteInfoData.php 4 years ago
ServerData.php
82 lines
1 <?php
2
3 namespace Give\Tracking\TrackingData;
4
5 use Give\Tracking\Contracts\TrackData;
6
7 /**
8 * Class ServerData
9 *
10 * Represents the server data.
11 *
12 * @package Give\Tracking\TrackingData
13 * @since 2.10.0
14 */
15 class ServerData implements TrackData
16 {
17
18 /**
19 * Returns the collection data.
20 *
21 * @since 2.10.0
22 *
23 * @return array The collection data.
24 */
25 public function get()
26 {
27 return $this->getServerData();
28 }
29
30 /**
31 * Returns the values with server details.
32 *
33 * @since 2.10.0
34 *
35 * @return array Array with the value.
36 */
37 private function getServerData()
38 {
39 $server_data = [];
40
41 // Validate if the server address is a valid IP-address.
42 $ipaddress = filter_input(INPUT_SERVER, 'SERVER_ADDR', FILTER_VALIDATE_IP);
43 if ($ipaddress) {
44 $server_data['server_ip'] = $ipaddress;
45 $server_data['server_hostname'] = gethostbyaddr($ipaddress);
46 }
47
48 $server_data['server_os'] = php_uname();
49 $server_data['php_version'] = PHP_VERSION;
50 $server_data = array_merge($server_data, $this->getCurlInfo());
51
52 return $server_data;
53 }
54
55 /**
56 * Returns details about the curl version.
57 *
58 * @since 2.10.0
59 *
60 * @return array|null The curl info. Or null when curl isn't available..
61 */
62 private function getCurlInfo()
63 {
64 if ( ! function_exists('curl_version')) {
65 return null;
66 }
67
68 $curl = curl_version();
69
70 $ssl_support = 1;
71 if ( ! $curl['features'] && CURL_VERSION_SSL) {
72 $ssl_support = 0;
73 }
74
75 return [
76 'curl_version' => $curl['version'],
77 'is_ssl' => $ssl_support,
78 ];
79 }
80 }
81
82