Skip to content

Instantly share code, notes, and snippets.

View artemsites's full-sized avatar

Artem Kuznecov artemsites

View GitHub Profile
@artemsites
artemsites / string_split_unicode.php
Last active July 21, 2018 13:32
 Перевод строки в посимвольный массив с поддержкой UTF-8
$string = "ЧелоБрейк";
function string_split_unicode($string, $length = 1) {
$tmp = preg_split('~~u', $string, -1, PREG_SPLIT_NO_EMPTY);
if ($length > 1) {
$chunks = array_chunk($tmp, $length);
foreach ($chunks as $i => $chunk) {
$chunks[$i] = join('', (array) $chunk);
}
$tmp = $chunks;
}
@artemsites
artemsites / transliterator_rus_array.php
Last active July 21, 2018 14:07
Транслитерация массива русских символов в строку английских символов
$array_string = array(
0 => "Ч",
1 => "е",
2 => "л",
3 => "о",
4 => "Б",
5 => "р",
6 => "е",
7 => "й",
8 => "к"
@artemsites
artemsites / menu.php
Created July 21, 2018 15:46
Замена всех строковых вхождений в шаблоне .html на результат кода из .php {{ANYCONTENT}}
$menu = "ANY GENERATED MENU"; // любое предварительно сгенерированное меню
$template = file_get_contents('index.html'); // считываем файл куда вставим шаблончик {{MENU}}
$content = str_replace('{{MENU}}', $menu, $template); // заменяем все вхождения {{MENU}} на сгенерированное меню $menu в прочитанном файле $template
print($content); // отпечатываем результат в шаблон (в шаблоне должен быть подключен данный файл require_once("./menu.php");)
@artemsites
artemsites / simbols_to_simbols.php
Last active July 24, 2018 08:41
Замена любых символов в строке на любые другие
/**
* Замена любых символов в строке на любые другие
*
* @param [string] $string - входная строка
* @param [string] $a - что поменять
* @param [string] $b - на что поменять
* @return string - строка с замененными символами
*/
function simbols_to_simbols($string, $a, $b) {
$array = explode($a, $string);
@artemsites
artemsites / transliterator_srting_rus_to_eng.php
Last active July 24, 2018 08:54
Транслитерация строки русских символов в строку с английскими символами
/**
* Транслитерация строки из рус в анг символы.
*
* @param [type] $string - входная строка
* @param integer $length - длина обрабатываемой строки (по умолчанию вся строка (-1))
* @return string - транслитерированная строка
*/
function transliterator_srting_rus_to_eng($string, $length = 1) {
$array_rus_letters = preg_split('~~u', $string, -1, PREG_SPLIT_NO_EMPTY);
if ($length > 1) {
@artemsites
artemsites / menuConstruct.php
Last active July 24, 2018 14:01
Функции для вывода меню ul>li любой глубины вложенности из заданного массива.
/**
* В файле вывода меню нужно:
*
* Подключить файл с этими функциями
* <?php require_once("./functions.php"); ?>
*
* И вызвать функцию в нужном месте
* <?php menuConstruct($array_menu); ?>
*/
////////////////////////////////////////////////////////////////////////////////
@artemsites
artemsites / .htaccess
Created July 25, 2018 16:25
Защищаем .htaccess файл
#Защищаем .htaccess файл
<files .htaccess>
order allow,deny
deny from all
</files>
@artemsites
artemsites / decToHex.php
Created July 28, 2018 14:50
Преобразование строки описывающей цвет из RGB формата в HEX.
/**
* Преобразует запись цвета из RGB в HEX.
*
* @param [string] $dec_color - цвет в десятичном формате 50, 100, 150;
*
* @return [string] - строка в шестнадцатиричном формате #326496;
*/
function decToHex($dec_color)
{
$arr_color = explode(', ', $dec_color);
@artemsites
artemsites / getNamesOfDir.php
Created August 5, 2018 04:08
Получение имен файлов и каталогов в заданной дирректории.
/**
* Получение имен файлов и каталогов в заданной дирректории.
*
* @param [string] $dir - дирректория
* @return array
*/
function getNamesOfDir($dir) {
return array_slice(scandir($dir), 2);
}
@artemsites
artemsites / modx-migx.js
Last active August 9, 2018 12:33
Пример поля MIGX в MODx Revolutoin
Tabs:
[
{"caption":"Tab Title", "fields": [
{"field":"title","caption":"Name"},
{"field":"description","caption":"Description","inputTVtype":"textarea"},
{"field":"imageTV","caption":"Photo","inputTV":"imageTV"}
]}
]
Table: