Skip to content

Instantly share code, notes, and snippets.

View voronkovich's full-sized avatar

Oleg Voronkovich voronkovich

View GitHub Profile
@voronkovich
voronkovich / unit-of-work.php
Created October 28, 2018 16:36
Unit of work example
<?php
class Tweet
{
private $id;
private $content;
public function __construct(int $id, string $content)
{
$this->id = $id;
@voronkovich
voronkovich / mysql_helper.php
Created May 14, 2017 21:54
db_get_prepare_stmt
<?php
/**
* Создает подготовленное выражение на основе готового SQL запроса и переданных данных.
*
* @param mysqli $link Ресурс соединения
* @param string $sql SQL запрос с плейсхолдерами вместо значений
* @param array $data Данные для вставки на место плейсхолдеров
*
* @throws \UnexpectedValueException Если тип параметра не поддерживается
@voronkovich
voronkovich / backup.sh
Last active August 29, 2015 14:22
Backup to Yandex.Disk using webdav
#!/usr/bin/env sh
remote_url='https://webdav.yandex.ru/backups'
credentials=$(cat ~/.yapwd) # user:password
curl_command="curl -u $credentials"
create_remote_dir() {
$curl_command -X MKCOL "$remote_url/$1"
return $?
#!/usr/bin/env bash
#
# Launch this script in a new Joomla folder
#
current_dir=$(readlink -f .)
if [[ ! -w $current_dir/configuration.php ]]; then
echo "Error: configuration.php isn't writable or doesn't exists" 1>&2
exit 1;
@voronkovich
voronkovich / mvmodx.sh
Created August 9, 2014 15:23
Moving MODx to another directory
#!/usr/bin/env sh
#
# Launch this script in a new MODx directory
#
old_path=$(sed -ne "s/^.*\\\$modx_base_path[[:space:]]*=[[:space:]]*'\\(.*\\)';.*$/\\1/p" core/config/config.inc.php)
new_path=$(readlink -f ${2:="."} 2&>/dev/null)
for file in $(grep -lR --exclude-dir="cache" $old_path * 2&> /dev/null)