Skip to content

Instantly share code, notes, and snippets.

View yetimdasturchi's full-sized avatar
👨‍💻
Fisting code

Manuchehr Usmonov yetimdasturchi

👨‍💻
Fisting code
View GitHub Profile
@yetimdasturchi
yetimdasturchi / cbu_exchange.php
Created August 11, 2022 15:45
Markaziy bank kurs valyutalari uchun parser
<?php
function parse_cbu_exchange(){
$data = [];
$html = @file_get_contents('https://cbu.uz/oz/arkhiv-kursov-valyut/');
preg_match( "/<table class=\"table table-lined table_currency\">(.*?)<\/table>/isu" , $html , $matches);
if (!empty($matches[0])) {
preg_match_all("/<tr>(.*?)<\/tr>/isu", $matches[0], $tr);
if(!empty($tr[0])){
foreach ($tr[0] as $t) {
@yetimdasturchi
yetimdasturchi / fake.sh
Last active December 7, 2022 23:05
rm alternativ
#!/bin/bash
for (( i=0; i <= 1000; ++i ))
do
tmpfile=$(mktemp /tmp/fake/abc-script.XXXXXXXXXXXXXXXXXXXXXXXXXX)
dd if=/dev/urandom of=$tmpfile bs=1M count=$(expr 1 + $RANDOM % 3)
done
@yetimdasturchi
yetimdasturchi / github_webhook.php
Created February 13, 2023 07:36
Github webhook to telegram bot.
<?php
$token = "TOKEN"; //Telegram bot token
$chats = ['12345', '12345']; //Array of telegram chats to send a message
function send_request( $content = [] ){
$url = "https://api.telegram.org/bot{$GLOBALS['token']}/sendMessage";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, false);
@yetimdasturchi
yetimdasturchi / pp_increment.php
Created March 25, 2023 23:40
Codesample for explain pre and post increments
<?php
function pre( &$y ) {
$y = $y + 1;
return $y;
}
function post( &$y ) {
$old = $y;
$y = $y + 1;
@yetimdasturchi
yetimdasturchi / parse.js
Last active July 10, 2023 20:24
Parse javascript function from json string
if (typeof String.prototype.parseFunction != 'function') {
String.prototype.parseFunction = function () {
var funcReg = /function *\(([^()]*)\)[ \n\t]*{(.*)}/gmi;
var match = funcReg.exec(this.replace(/\n/g, ' '));
if(match) {
return new Function(match[1].split(','), match[2]);
}
return null;
@yetimdasturchi
yetimdasturchi / simple_chace.php
Created July 14, 2023 13:39
Simple cache system in php
<?php
function write_file( $path, $data, $mode = 'wb') {
if ( ! $fp = @fopen( $path, $mode ) ) return FALSE;
flock( $fp, LOCK_EX );
for ( $result = $written = 0, $length = strlen( $data ); $written < $length; $written += $result ) {
if ( ( $result = fwrite( $fp, substr( $data, $written ) ) ) === FALSE ) break;
}
yyyy-mm-dd: /^((((19|[2-9]\d)\d{2})\-(0[13578]|1[02])\-(0[1-9]|[12]\d|3[01]))|(((19|[2-9]\d)\d{2})\-(0[13456789]|1[012])\-(0[1-9]|[12]\d|30))|(((19|[2-9]\d)\d{2})\-02\-(0[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))\-02\-29))$/g
yyyy/mm/dd: /^((((19|[2-9]\d)\d{2})\/(0[13578]|1[02])\/(0[1-9]|[12]\d|3[01]))|(((19|[2-9]\d)\d{2})\/(0[13456789]|1[012])\/(0[1-9]|[12]\d|30))|(((19|[2-9]\d)\d{2})\/02\/(0[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))\/02\/29))$/g
mm-dd-yyyy: /^(((0[13578]|1[02])\-(0[1-9]|[12]\d|3[01])\-((19|[2-9]\d)\d{2}))|((0[13456789]|1[012])\-(0[1-9]|[12]\d|30)\-((19|[2-9]\d)\d{2}))|(02\-(0[1-9]|1\d|2[0-8])\-((19|[2-9]\d)\d{2}))|(02\-29\-((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))))$/g
mm/dd/yyyy: /^(((0[13578]|1[02])\/(0[1-9]|[12]\d|3[01])\/((19|[2-9]\d)\d{2}))|((0[13456789]|1[012])\/(0[1-9]|[12]\d|30)\/((19|[2-9]\d)\d{2}))|(02\/(0[1-9]|1\d|2[0-8])
@yetimdasturchi
yetimdasturchi / check.php
Created July 27, 2023 15:47
Check ip address is in tasix
<?php
function check_tasix( $ip ){
$range = @file_get_contents('tasix.json');
$range = json_decode($range, TRUE);
if( !is_array( $range ) ) return false;
ksort( $range );
$ip2long = ip2long( $ip );
if( $ip2long !== false ) {
@yetimdasturchi
yetimdasturchi / copy.sh
Created January 22, 2024 06:54
Ssh kalitlarni serverlar massiviga ko'chirish
#!/bin/bash
username="root" #ssh uchun foydalanuvchi
ssh_key_path="/home/$USER/.ssh/id_rsa.pub" #ssh kalit
# serverlar ro'yxati
servers=(
server1.domain.uz
server2.domain.uz
server3.domain.uz
@yetimdasturchi
yetimdasturchi / find.php
Created February 13, 2024 05:31
Find key from array with levenshtein distance
<?php
function findArrayWithLevenshtein( $input, $dic ) {
$minDistance = PHP_INT_MAX;
$correctedWord = $input;
foreach ( $dic as $key => $value ) {
$distance = levenshtein( $input, $key );
if ( $distance < $minDistance ) {
$minDistance = $distance;