Skip to content

Instantly share code, notes, and snippets.


Jan Pecha janpecha

View GitHub Profile
JanTvrdik / uuid.php
Last active Feb 14, 2018
PHP Fast and simple UUID v4 generator
View uuid.php
function generateUuidWithoutDashes(): string
$uuidBin = random_bytes(16);
$uuidBin &= "\xFF\xFF\xFF\xFF\xFF\xFF\x0F\xFF\x3F\xFF\xFF\xFF\xFF\xFF\xFF\xFF";
$uuidBin |= "\x00\x00\x00\x00\x00\x00\x40\x00\x80\x00\x00\x00\x00\x00\x00\x00";
$uuidHex = bin2hex($uuidBin);
return $uuidHex;
milo / github-webhook-handler.php
Last active Oct 29, 2020
GitHub Webhook Handler
View github-webhook-handler.php
* GitHub webhook handler template.
* @see
* @author Miloslav Hůla (
$hookSecret = 's.e.c.r.e.t'; # set NULL to disable check
mibk / BaseQuery.php
Last active Dec 14, 2018
LeanMapperQuery suggested base classes.
View BaseQuery.php
namespace Model\Entity;
use LeanMapperQuery\Entity;
use LeanMapperQuery\IQuery;
use Model\Query\EntityQuery;
class BaseEntity extends Entity
dg / websocket.html
Created Aug 11, 2013
WebSocket communication between PHP and single client
View websocket.html
<!doctype html>
if ("WebSocket" in window) {
var ws = new WebSocket("ws://");
ws.onopen = function() {
ws.onerror = function(e) {
juzna /
Last active Nov 22, 2016
Server Configuration in git

Server Configuration in git

With git you can have anything versioned. You're used to version your code, which is a bunch of files. Your server configuration (on Linux) is also just a bunch of files, so it can be versioned as well.

The idea is simple: create a git repository in /etc/ and commit everytime you change any configuration of your server. Written in code:

cd /etc
git init
git add .
lexaurin / .gitconfig
Last active Dec 11, 2015
How to manage changelog by git tags? Prefix tags with "v" letter and use this alias:
View .gitconfig
changelog = "!git tag -l v* -n20 | sed -n 'H;${;g;s/\\n[^v]/\\x00/g;p}' | sort -rV | tr \\\\000 \\\\n | less"
juzna /
Created Aug 20, 2012
Nette\Object performance tests

Nette\Object performance tests

I guess you already saw a short note Latency Numbers Every Programmer Should Know. I wanted to check how well Nette performs with its magic properties on Nette\Object.

You can see the testing code below together with raw output on my machine.

It show how much time in seconds it took to execute one million iterations of a particular action, thus it is also time in microseconds of one such call. You should compare it to null test, which execute empty iterations.


senko /
Created Aug 18, 2011
Watch current directory and execute a command if anything in it changes
# Watch current directory (recursively) for file changes, and execute
# a command when a file or directory is created, modified or deleted.
# Written by: Senko Rasic <>
# Requires Linux, bash and inotifywait (from inotify-tools package).
# To avoid executing the command multiple times when a sequence of
You can’t perform that action at this time.