plateforme-corres2math/server_files/utils.php

48 lines
1.0 KiB
PHP

<?php
function ensure($bool, $error_msg = "")
{
if (!$bool)
throw new AssertionError($error_msg);
}
function formatDate($date = NULL, $with_time = false)
{
if ($date == NULL)
$date = date("yyyy-mm-dd");
return strftime("%d %B %G" . ($with_time ? " %H:%M" : ""), strtotime($date));
}
function dateWellFormed($date, $with_time = false)
{
return date_parse_from_format($with_time ? "yyyy-mm-dd HH-MM:ss" : "yy-mm-dd", $date) !== false;
}
function genRandomPhrase($size, $uppercase = false)
{
$alphabet = $uppercase ? "0123456789abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" : "0123456789abcdefghijklmnopqrstuvwxyz0123456789";
$phrase = "";
for ($i = 0; $i < $size; ++$i) {
$phrase .= $alphabet[rand(0, strlen($alphabet) - 1)];
}
return $phrase;
}
function getExtFromMimeType($mime_type)
{
switch ($mime_type) {
case "application/pdf":
return ".pdf";
case "image/png":
return ".png";
case "image/jpg":
case "image/jpeg":
return ".jpg";
case "application/zip":
return ".zip";
}
return "";
}