PluginProbe
Charitable – Donation & Fundraising Platform (Donation Forms, Recurring Donations & Fundraising Campaigns) / 1.8.13
Charitable – Donation & Fundraising Platform (Donation Forms, Recurring Donations & Fundraising Campaigns) v1.8.13
1.8.13.1 1.8.13 1.8.12.3 1.8.12.2 1.8.12.1 1.8.12 1.8.11.3 1.8.11.2 1.8.11.1 1.8.11 1.6.6 1.6.60 1.6.7 1.6.8 1.6.9 1.7.0 1.7.0.1 1.7.0.11 1.7.0.12 1.7.0.14 1.7.0.2 1.7.0.3 1.7.0.5 1.7.0.6 1.7.0.7 All 212 releases
charitable / vendor / stripe / stripe-php / lib / Util / RandomGenerator.php

RandomGenerator.php in Charitable – Donation & Fundraising Platform (Donation Forms, Recurring Donations & Fundraising Campaigns) 1.8.13, at vendor/stripe/stripe-php/lib/Util/RandomGenerator.php

37 lines 814 B
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Stripe\Util;
4
5 /**
6 * A basic random generator. This is in a separate class so we the generator
7 * can be injected as a dependency and replaced with a mock in tests.
8 */
9 class RandomGenerator
10 {
11 /**
12 * Returns a random value between 0 and $max.
13 *
14 * @param float $max (optional)
15 *
16 * @return float
17 */
18 public function randFloat($max = 1.0)
19 {
20 return \mt_rand() / \mt_getrandmax() * $max;
21 }
22
23 /**
24 * Returns a v4 UUID.
25 *
26 * @return string
27 */
28 public function uuid()
29 {
30 $arr = \array_values(\unpack('N1a/n4b/N1c', \openssl_random_pseudo_bytes(16)));
31 $arr[2] = ($arr[2] & 0x0FFF) | 0x4000;
32 $arr[3] = ($arr[3] & 0x3FFF) | 0x8000;
33
34 return \vsprintf('%08x-%04x-%04x-%04x-%04x%08x', $arr);
35 }
36 }
37