Инструменты пользователя

Инструменты сайта


class_dfunction

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

class_dfunction [2018/08/14 06:37] (текущий)
Строка 1: Строка 1:
 +====== PHP class DFunction и подборка функций ======
 +class DFunction - класс для проверки пользовательских данных,​ умеет
 +  - Транслитерация русских букв в латиницу и создание ЧПУ
 +  - Преобразование байтов в килобайты,​ мегабайты и т.д.
  
 +<file php DFunction.php>​
 +<?php
 +
 +/**
 + ​* ​
 + * @author darkfire
 + ​* ​
 + * include_once($_SERVER['​DOCUMENT_ROOT'​]."/​classes/​DFunction.php"​);​
 + */
 +class DFunction {
 +
 +    static function detectlanguage() {
 +        /* Example for use
 +         * $language = DFunction::​detectlanguage();​
 +         * echo "You have chosen $language as your language in your web browser.";​
 +         */
 +
 +        $langcode = explode(";",​ $_SERVER['​HTTP_ACCEPT_LANGUAGE'​]);​
 +        $langcode = explode(",",​ $langcode['​0'​]);​
 +        return $langcode['​0'​];​
 +    }
 +
 +    static function clearInData($data,​ $type = '​i'​) {
 +        // User datas is clearing.
 +        switch ($type) {
 +            case '​i':​ return (int) $data;
 +                break;
 +            case '​s':​ return trim(strip_tags($data));​
 +                break;
 +            default: return FALSE;
 +                break;
 +        }
 +    }
 +
 +}
 +
 +function go_url($url) {
 +    /* Example for use
 +     * go_url($_SERVER['​REQUEST_URI'​]);​
 +     */
 +    if (!headers_sent()) {    //If headers not sent then do php redirect
 +        header('​Location:​ ' . $url);
 +        exit;
 +    } else {
 +//If headers are sent do JS redirect... if javascript disabled, do html redirect.
 +        echo '<​script type="​text/​javascript">​ window.location.href="'​ . $url . '";​ </​script>';​
 +        echo '<​noscript>';​
 +        echo '<​meta http-equiv="​refresh"​ content="​0;​url='​ . $url . '"​ />';​
 +        echo '</​noscript>';​
 +        exit;
 +    }
 +}
 +
 +function FBytes($size,​ $param = '​KB'​) {
 +    /*
 +     * Convert Bytes to KB to MB to GB to TB
 +     * echo FBytes(filesize($filename),'​MB'​);​
 +     */
 +    switch ($param) {
 +        case '​TB':​ $size /= 1024;
 +        case '​GB':​ $size /= 1024;
 +        case '​MB':​ $size /= 1024;
 +        case '​KB':​ $size /= 1024;
 +    }
 +    return round($size,​ 2) . " $param";​
 +}
 +
 +function nicebool($value) {
 +    if ($value === false || $value == 0 || empty($value))
 +        return "<​font color=\"​red\">​Off (${value})</​font>";​
 +    return "<​font color=\"​green\">​On (${value})</​font>";​
 +}
 +
 +function nicebool2($value) {
 +    if ($value >= 10 and $value < 100)
 +        return "<​font color=\"​orange\">​(${value})</​font>";​
 +    if ($value >= 100)
 +        return "<​font color=\"​red\">​(${value})</​font>";​
 +    return $value;
 +}
 +
 +/* Транслитерация */
 +function rus2translit($string) {
 +    $converter = array(
 +        '​а'​ => '​a', ​  '​б'​ => '​b', ​  '​в'​ => '​v',​
 +        '​г'​ => '​g', ​  '​д'​ => '​d', ​  '​е'​ => '​e',​
 +        '​ё'​ => '​e', ​  '​ж'​ => '​zh', ​ '​з'​ => '​z',​
 +        '​и'​ => '​i', ​  '​й'​ => '​y', ​  '​к'​ => '​k',​
 +        '​л'​ => '​l', ​  '​м'​ => '​m', ​  '​н'​ => '​n',​
 +        '​о'​ => '​o', ​  '​п'​ => '​p', ​  '​р'​ => '​r',​
 +        '​с'​ => '​s', ​  '​т'​ => '​t', ​  '​у'​ => '​u',​
 +        '​ф'​ => '​f', ​  '​х'​ => '​h', ​  '​ц'​ => '​c',​
 +        '​ч'​ => '​ch', ​ '​ш'​ => '​sh', ​ '​щ'​ => '​sch',​
 +        '​ь'​ => '​\'', ​ '​ы'​ => '​y', ​  '​ъ'​ => '​\'',​
 +        '​э'​ => '​e', ​  '​ю'​ => '​yu', ​ '​я'​ => '​ya',​
 +
 +        '​А'​ => '​A', ​  '​Б'​ => '​B', ​  '​В'​ => '​V',​
 +        '​Г'​ => '​G', ​  '​Д'​ => '​D', ​  '​Е'​ => '​E',​
 +        '​Ё'​ => '​E', ​  '​Ж'​ => '​Zh', ​ '​З'​ => '​Z',​
 +        '​И'​ => '​I', ​  '​Й'​ => '​Y', ​  '​К'​ => '​K',​
 +        '​Л'​ => '​L', ​  '​М'​ => '​M', ​  '​Н'​ => '​N',​
 +        '​О'​ => '​O', ​  '​П'​ => '​P', ​  '​Р'​ => '​R',​
 +        '​С'​ => '​S', ​  '​Т'​ => '​T', ​  '​У'​ => '​U',​
 +        '​Ф'​ => '​F', ​  '​Х'​ => '​H', ​  '​Ц'​ => '​C',​
 +        '​Ч'​ => '​Ch', ​ '​Ш'​ => '​Sh', ​ '​Щ'​ => '​Sch',​
 +        '​Ь'​ => '​\'', ​ '​Ы'​ => '​Y', ​  '​Ъ'​ => '​\'',​
 +        '​Э'​ => '​E', ​  '​Ю'​ => '​Yu', ​ '​Я'​ => '​Ya',​
 +    );
 +    return strtr($string,​ $converter);​
 +//return $str=iconv("​UTF-8","​UTF-8//​IGNORE",​strtr($string,​$replace));​
 +}
 +
 +function str2url($str) {
 +    // переводим в транслит
 +    $str = rus2translit($str);​
 +    // в нижний регистр
 +    $str = strtolower($str);​
 +    // заменям все ненужное нам на "​-"​
 +    $str = preg_replace('​~[^-a-z0-9_]+~u',​ '​-',​ $str);
 +    // удаляем начальные и конечные '​-'​
 +    $str = trim($str, "​-"​);​
 +    return $str;
 +}
 +
 +?>
 +</​file>​
class_dfunction.txt · Последние изменения: 2018/08/14 06:37 (внешнее изменение)