Skip to content

Instantly share code, notes, and snippets.

@divinity76
divinity76 / rector.php
Created March 4, 2024 15:09
rector.php example
<?php
declare(strict_types=1);
return (static function (\Rector\Config\RectorConfig $rectorConfig): void {
$rectorConfig->paths([
'/home/hans/projects/php-ml/',
]);
$rectorConfig->sets([
\Rector\Set\ValueObject\LevelSetList::UP_TO_PHP_82,
@divinity76
divinity76 / merge_csv.php
Created March 2, 2024 08:08
csv merger script
<?php
declare(strict_types=1);
function fix_encoding(string $str): string
{
//return $str;
return mb_convert_encoding($str, 'UTF-8', 'ISO-8859-1');
}
@divinity76
divinity76 / bogostress.cpp
Created February 29, 2024 08:06
bogostress.cpp
#define _GNU_SOURCE
#include <iostream>
#include <pthread.h>
#include <chrono>
#include <vector>
#include <unistd.h>
#include <sched.h>
#include <stdexcept>
#include <climits>
@divinity76
divinity76 / Dockerfile
Created February 8, 2024 14:27
Dockerfile reproduce example
# see https://github.com/php/php-src/issues/12450
FROM ubuntu:20.04
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update -y
RUN apt-get -y full-upgrade;
RUN apt-get -y install apt-utils
RUN apt-get -y install golang build-essential git autoconf bison re2c make cmake automake libtool libpsl-dev libpsl5
RUN bash -c 'set -e;\
git clone -b curl-8_6_0 --single-branch --depth 1 https://github.com/curl/curl.git; \
cd curl; \
@divinity76
divinity76 / b3instructions.php
Created January 25, 2024 05:20
blake3 portable vs optimized
<?php
declare(strict_types=1);
/**
* better version of shell_exec(),
* supporting both stdin and stdout and stderr and os-level return code
*
* @param string $cmd
* command to execute
@divinity76
divinity76 / resource_limits.cpp
Created January 22, 2024 01:13
test system resource limits (ram allocation, open file handles, concurrent threads)
#include <iostream>
#include <fstream>
#include <thread>
#include <vector>
#include <string>
#include <cstdlib>
char **global_argv;
void testMemory() {
std::cout << "Starting Memory Test" << std::endl;
std::vector<char*> allocations;
@divinity76
divinity76 / file_searcher.php
Created January 18, 2024 08:39
file searcher
<?php
declare(strict_types=1);
$dir = realpath(__DIR__ . '/..');
$files = shell_exec("find " . escapeshellarg($dir) . " -print0");
$files = explode("\x00", rtrim($files, "\x00"));
$files = array_filter($files, function ($filepath) {
if (!preg_match("/page/", $filepath)) {
return false;
@divinity76
divinity76 / php_inserter.php
Created January 18, 2024 08:27
php advanced code inserter
<?php
declare(strict_types=1);
$dir = realpath(__DIR__ . '/..');
$files = shell_exec("find " . escapeshellarg($dir) . " -print0");
$files = explode("\x00", rtrim($files, "\x00"));
$files = array_filter($files, function ($filepath) {
if(!preg_match("/page/", $filepath)) {
return false;
@divinity76
divinity76 / php_to_shell.php
Created October 30, 2023 08:14
php script to shell command converter
#!/usr/bin/env php
<?php
declare(strict_types=1);
use function var_dump as d;
function dd(...$args)
{
$trace = debug_backtrace(0, 1)[0]; // odd, i really expected (0, 2)[1] ... but it works
$line = $trace['line'];
$file = $trace['file'];
@divinity76
divinity76 / results.json
Last active September 19, 2023 08:07
sick simulation
{
"percent_sick_if_tested_positive": 4.458833791853989,
"percent_healthy_if_tested_positive": 48.80539325842697,
"percent_sick_if_tested_negative": 0.0011333259793069787,
"percent_healthy_if_tested_negative": 49.99971666368849,
"percent_tested_positive_and_sick": 49.719416386083054,
"percent_tested_positive_and_healthy": 1.9703818540227784,
"percent_tested_negative_and_sick": 1.1037527593818985,
"percent_tested_negative_and_healthy": 49.49240211146362,
"total_population": 5408000,