Skip to content

Instantly share code, notes, and snippets.

View Aleksandr-ru's full-sized avatar
🚀
To infinity... and beyond

Aleksandr.ru Aleksandr-ru

🚀
To infinity... and beyond
View GitHub Profile
<?php
/**
* Проверяет наличие строковых ключей в массиве
* @param array $arr
* @return bool
* @link http://stackoverflow.com/questions/173400/how-to-check-if-php-array-is-associative-or-sequential
*/
function is_assoc($arr)
{
if(!is_array($arr)) {
<?php
/**
* pre()
* выводит обернутый в <pre>: print_r для массивов и объектов или var_dump для простых
* если включен error_reporting и display_errors
*
* @param mixed $expression
* @param bool $return
* @return bool || html
*/
@Aleksandr-ru
Aleksandr-ru / mysqldump.php
Created May 12, 2016 20:49
Dump local database to SQL file
<?php
//http://stackoverflow.com/questions/6750531/using-a-php-file-to-generate-a-mysql-dump
//error_reporting(E_ALL); ini_set('display_errors', 'on');
$DBUSER = "root";
$DBPASSWD = "pass";
$DATABASE = "mydb";
header('Content-Type: text/plain');
header('Content-Disposition: attachment; filename="backup-' . date("Y-m-d-His") . '.sql"');
@Aleksandr-ru
Aleksandr-ru / rudate.php
Last active December 4, 2023 16:46
Русифицированная функция date()
<?php
/**
* Отличительной чертой именно этой функции является высокая скорость работы, по сравнению с аналогами.
* @param string $format - The format of the outputted date string.
* F Полное наименование месяца, например Января или Марта от Января до Декабря
* M Сокращенное наименование месяца, 3 символа От Янв до Дек
* l (строчная 'L') Полное наименование дня недели От Воскресенье до Суббота
* D Сокращенное наименование дня недели, 2 символа от Вс до Сб
* остальные варианты форматирования см. функцию date() в мануале.
* @param mixed $timestamp is optional and defaults to the value of time()
@Aleksandr-ru
Aleksandr-ru / bs-btngroup-nowrap-table.css
Created July 15, 2016 13:02
Bootstrap no-wrap buttons of btn-group in a table
.table .btn-group {
white-space: nowrap;
}
.table .btn-group .btn {
display: inline-block;
float: none;
}
.table .btn-group .btn + .btn {
margin-left: -5px;
}
@Aleksandr-ru
Aleksandr-ru / sameorigin.php
Last active October 28, 2016 14:00
check host's or url's same origin
<?php
function sameOrigin($url1, $url2, $level = 2)
{
$host1 = strpos($url1, '://') ? parse_url($url1, PHP_URL_HOST) : $url1;
$host2 = strpos($url2, '://') ? parse_url($url2, PHP_URL_HOST) : $url2;
return host2origin($host1, $level) == host2origin($host2, $level);
}
function host2origin($host, $level = 2)
{
@Aleksandr-ru
Aleksandr-ru / backup-repo.sh
Created January 24, 2017 13:39
Git repo backup script
#!/bin/sh
# Usage:
# ./backup-repo.sh /path/to/reponame
#
# Result:
# /backup/reponame/reponame.YYYY-MM-DD.HHMMSS.tar
if [ ! -d "$1" ]; then
echo "'$1' is not a directory!"
@Aleksandr-ru
Aleksandr-ru / clean-branches.sh
Last active March 21, 2017 22:02
Clean old branches in a git repo
#!/bin/sh
# Usage:
# ./clean-branches.sh /path/to/reponanme
if [ ! -d "$1" ]; then
echo "'$1' is not a directory!"
echo "Usage:"
echo "$0 /path/to/reponame"
exit 1
@Aleksandr-ru
Aleksandr-ru / post-receive.sh
Last active December 26, 2017 10:06
Git bare repo post-receive hook for automatic deploy
#!/bin/sh
while read oldrev newrev refname
do
#echo post-receive: $oldrev $newrev $refname >> ~/post-receive.log
if [ "$oldrev" != "$newrev" ]; then
branch=$(git rev-parse --symbolic --abbrev-ref $refname)
if [ "master" == "$branch" ]; then
echo Deploying $branch branch to production
@Aleksandr-ru
Aleksandr-ru / pull-repo.sh
Last active January 9, 2018 19:09
Pull git repo script with reset support
#!/bin/sh
# Usage:
# ./pull-repo.sh /path/to/reponame [branchname =master]
#
# Logs:
# /var/log/gitbot/reponame.log
if [ ! -d "$1" ]; then
echo "'$1' is not a directory!"