Skip to content

Instantly share code, notes, and snippets.

@victory-sokolov
Last active July 14, 2022 10:48
Show Gist options
  • Save victory-sokolov/b66a1be98fd6c131eb3347813f9ee075 to your computer and use it in GitHub Desktop.
Save victory-sokolov/b66a1be98fd6c131eb3347813f9ee075 to your computer and use it in GitHub Desktop.
Reusable PHP functions
<?php
$start = '2022-07-10';
$end = '2022-07-12';
function randomDate($start_date, $end_date)
{
// Convert to timetamps
$min = strtotime($start_date);
$max = strtotime($end_date);
// Generate random number using above bounds
$val = rand($min, $max);
// Convert back to desired date format
return date('Y-m-d H:i:s', $val);
}
var_dump(randomDate($start, $end));
function uuidv4($data = null) {
// Generate 16 bytes (128 bits) of random data or use the data passed into the function.
$data = $data ?? random_bytes(16);
assert(strlen($data) == 16);
// Set version to 0100
$data[6] = chr(ord($data[6]) & 0x0f | 0x40);
// Set bits 6-7 to 10
$data[8] = chr(ord($data[8]) & 0x3f | 0x80);
// Output the 36 character UUID.
return vsprintf('%s%s-%s-%s-%s-%s%s%s', str_split(bin2hex($data), 4));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment